home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / GXPrinting.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  82.1 KB  |  2,815 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        GXPrinting.a
  3. ;
  4. ;    Contains:    This file contains all printing APIs except for driver/extension specific ones.
  5. ;
  6. ;    Version:    Technology:    Quickdraw GX 1.1
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1994-1997 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__GXPRINTING__') = 'UNDEFINED' THEN
  19. __GXPRINTING__ SET 1
  20.  
  21.     IF &TYPE('__CONDITIONALMACROS__') = 'UNDEFINED' THEN
  22.     include 'ConditionalMacros.a'
  23.     ENDIF
  24.     IF &TYPE('__COLLECTIONS__') = 'UNDEFINED' THEN
  25.     include 'Collections.a'
  26.     ENDIF
  27.     IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
  28.     include 'Dialogs.a'
  29.     ENDIF
  30.     IF &TYPE('__ERRORS__') = 'UNDEFINED' THEN
  31.     include 'Errors.a'
  32.     ENDIF
  33.     IF &TYPE('__FILES__') = 'UNDEFINED' THEN
  34.     include 'Files.a'
  35.     ENDIF
  36.     IF &TYPE('__GXFONTS__') = 'UNDEFINED' THEN
  37.     include 'GXFonts.a'
  38.     ENDIF
  39.     IF &TYPE('__GXMATH__') = 'UNDEFINED' THEN
  40.     include 'GXMath.a'
  41.     ENDIF
  42.     IF &TYPE('__GXTYPES__') = 'UNDEFINED' THEN
  43.     include 'GXTypes.a'
  44.     ENDIF
  45.     IF &TYPE('__LISTS__') = 'UNDEFINED' THEN
  46.     include 'Lists.a'
  47.     ENDIF
  48.     IF &TYPE('__MENUS__') = 'UNDEFINED' THEN
  49.     include 'Menus.a'
  50.     ENDIF
  51.     IF &TYPE('__GXMESSAGES__') = 'UNDEFINED' THEN
  52.     include 'GXMessages.a'
  53.     ENDIF
  54.     IF &TYPE('__PRINTING__') = 'UNDEFINED' THEN
  55.     include 'Printing.a'
  56.     ENDIF
  57.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  58.     include 'Quickdraw.a'
  59.     ENDIF
  60.  
  61. ; ********************************************************************
  62. ;                    Start of old "GXPrintingManager.h/a/p" interface file.
  63. ;            ********************************************************************
  64.  
  65. ;  ------------------------------------------------------------------------------
  66. ;
  67. ;                            Printing Manager API Contants and Types
  68. ;
  69. ;-------------------------------------------------------------------------------- 
  70.  
  71.  
  72. ; typedef unsigned long                 gxOwnerSignature
  73.  
  74.     IF OLDROUTINENAMES THEN
  75. ; typedef unsigned long                 Signature
  76.  
  77.     ENDIF    ; OLDROUTINENAMES
  78. ;
  79. ;    ABSTRACT DATA TYPES
  80. ;
  81. ;
  82.  
  83.  
  84. ;   typedef struct gxPrivatePrinterRecord *gxPrinter;
  85. ;   typedef struct gxPrivateJobRecord *gxJob;
  86. ;   typedef struct gxPrivateFormatRecord *gxFormat;
  87. ;   typedef struct gxPrivatePaperTypeRecord *gxPaperType;
  88. ;   typedef struct gxPrivatePrintFileRecord *gxPrintFile;
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102. ;  Possible values for LoopStatus 
  103. ; typedef Boolean                         gxLoopStatus
  104.  
  105.  
  106. gxStopLooping                    EQU        0
  107. gxKeepLooping                    EQU        1
  108.     IF OLDROUTINENAMES THEN
  109. ; typedef GXViewDeviceProcPtr             gxViewDeviceProc
  110.  
  111. ; typedef GXFormatProcPtr                 gxFormatProc
  112.  
  113. ; typedef GXPaperTypeProcPtr             gxPaperTypeProc
  114.  
  115. ; typedef GXPrintingFlattenProcPtr         gxPrintingFlattenProc
  116.  
  117.     ENDIF    ; OLDROUTINENAMES
  118. ;    The following constants are used to set collection item flags in printing
  119. ;    collections. The Printing Manager purges certain items whenever a driver
  120. ;    switch occurs. If the formatting driver changes, all items marked as
  121. ;    gxVolatileFormattingDriverCategory will be purged.  If the output driver
  122. ;    changes, all items marked as gxVolatileOutputDriverCategory will be purged.
  123. ;    Note that to prevent items from being flattened when GXFlattenJob is called,
  124. ;    you should unset the collectionPersistenceBit (defined in Collections.h),
  125. ;    which is on by default.
  126. ;
  127.  
  128. ;  Structure stored in collection items' user attribute bits 
  129. ; typedef short                         gxCollectionCategory
  130.  
  131.  
  132. gxNoCollectionCategory            EQU        $0000
  133. gxOutputDriverCategory            EQU        $0001
  134. gxFormattingDriverCategory        EQU        $0002
  135. gxDriverVolatileCategory        EQU        $0004
  136. gxVolatileOutputDriverCategory    EQU        $0005
  137. gxVolatileFormattingDriverCategory EQU    $0006
  138.  
  139. ;
  140. ;    >>>>>> JOB COLLECTION ITEMS <<<<<<
  141. ;
  142. ;
  143.  
  144.  
  145. ;  gxJobInfo COLLECTION ITEM 
  146.  
  147. gxJobTag                        EQU        'job '
  148. gxJobInfo                RECORD 0
  149. numPages                 ds.l    1                ; offset: $0 (0)        ;  Number of pages in the document 
  150. priority                 ds.l    1                ; offset: $4 (4)        ;  Priority of this job plus "is it on hold?" 
  151. timeToPrint                 ds.l    1                ; offset: $8 (8)        ;  When to print job, if scheduled 
  152. jobTimeout                 ds.l    1                ; offset: $C (12)        ;  Timeout value, in ticks 
  153. firstPageToPrint         ds.l    1                ; offset: $10 (16)        ;  Start printing from this page 
  154. jobAlert                 ds.w    1                ; offset: $14 (20)        ;  How to alert user when printing 
  155. appName                     ds        Str31            ; offset: $16 (22)        ;  Which application printed the document 
  156. documentName             ds        Str31            ; offset: $36 (54)        ;  The name of the document being printed 
  157. userName                 ds        Str31            ; offset: $56 (86)        ;  The owner name of the machine that printed the document 
  158. sizeof                     EQU *                    ; size:   $76 (118)
  159.                         ENDR
  160. ;  gxPDDDefaultSettingTag COLLECTION ITEM 
  161.  
  162. gxPDDDefaultSettingTag            EQU        'pdds'
  163. gxPDDDefaultSettingInfo    RECORD 0
  164. useDefaultSetting         ds.b    1                ; offset: $0 (0)        ;  true if PDD default setting should be used 
  165. pad                         ds.b    1                ; offset: $1 (1)
  166. sizeof                     EQU *                    ; size:   $2 (2)
  167.                         ENDR
  168. ;  priority field constants 
  169.  
  170. gxPrintJobHoldingBit            EQU        $00001000            ; This bit is set if the job is on hold. 
  171.  
  172. gxPrintJobUrgent                EQU        $00000001
  173. gxPrintJobAtTime                EQU        $00000002
  174. gxPrintJobASAP                    EQU        $00000003
  175. gxPrintJobHolding                EQU        $00001003
  176. gxPrintJobHoldingAtTime            EQU        $00001002
  177. gxPrintJobHoldingUrgent            EQU        $00001001
  178. ;  jobAlert field constants 
  179.  
  180. gxNoPrintTimeAlert                EQU        0                    ; Don't alert user when we print 
  181. gxAlertBefore                    EQU        1                    ; Alert user before we print 
  182. gxAlertAfter                    EQU        2                    ; Alert user after we print 
  183. gxAlertBothTimes                EQU        3                    ; Alert before and after we print 
  184. ;  jobTimeout field constants 
  185.  
  186. gxThirtySeconds                    EQU        1800                ; 30 seconds in ticks 
  187. gxTwoMinutes                    EQU        7200                ; 2 minutes in ticks 
  188.  
  189. ;  gxCollationTag COLLECTION ITEM 
  190.  
  191. gxCollationTag                    EQU        'sort'
  192. gxCollationInfo            RECORD 0
  193. collation                 ds.b    1                ; offset: $0 (0)        ;  True if copies are to be collated 
  194. padByte                     ds.b    1                ; offset: $1 (1)
  195. sizeof                     EQU *                    ; size:   $2 (2)
  196.                         ENDR
  197.  
  198. ;  gxCopiesTag COLLECTION ITEM 
  199.  
  200. gxCopiesTag                        EQU        'copy'
  201. gxCopiesInfo            RECORD 0
  202. copies                     ds.l    1                ; offset: $0 (0)        ;  Number of copies of the document to print 
  203. sizeof                     EQU *                    ; size:   $4 (4)
  204.                         ENDR
  205.  
  206. ;  gxPageRangeTag COLLECTION ITEM 
  207.  
  208. gxPageRangeTag                    EQU        'rang'
  209. gxSimplePageRangeInfo    RECORD 0
  210. optionChosen             ds.b    1                ; offset: $0 (0)        ;  From options listed below 
  211. printAll                 ds.b    1                ; offset: $1 (1)        ;  True if user wants to print all pages 
  212. fromPage                 ds.l    1                ; offset: $2 (2)        ;  For gxDefaultPageRange, current value 
  213. toPage                     ds.l    1                ; offset: $6 (6)        ;  For gxDefaultPageRange, current value 
  214. sizeof                     EQU *                    ; size:   $A (10)
  215.                         ENDR
  216. gxPageRangeInfo            RECORD 0
  217. simpleRange                 ds        gxSimplePageRangeInfo ; offset: $0 (0) ;  Info which will be returned for GetJobPageRange 
  218. fromString                 ds        Str31            ; offset: $A (10)        ;  For gxCustomizePageRange, current value 
  219. toString                 ds        Str31            ; offset: $2A (42)        ;  For gxCustomizePageRange, current value 
  220. minFromPage                 ds.l    1                ; offset: $4A (74)        ;  For gxDefaultPageRange, we parse with this, ignored if nil 
  221. maxToPage                 ds.l    1                ; offset: $4E (78)        ;  For gxDefaultPageRange, we parse with this, ignored if nil 
  222. replaceString             ds.b    1                ; offset: $52 (82) <-- really an array of length one ;  For gxReplacePageRange, string to display 
  223.                          ORG 84
  224. sizeof                     EQU *                    ; size:   $54 (84)
  225.                         ENDR
  226.  
  227. ;  optionChosen field constants for SimplePageRangeInfo 
  228.  
  229. gxDefaultPageRange                EQU        0
  230. gxReplacePageRange                EQU        1
  231. gxCustomizePageRange            EQU        2
  232.  
  233. ;  gxQualityTag COLLECTION ITEM 
  234.  
  235. gxQualityTag                    EQU        'qual'
  236. gxQualityInfo            RECORD 0
  237. disableQuality             ds.b    1                ; offset: $0 (0)        ;  True to disable standard quality controls 
  238. padByte                     ds.b    1                ; offset: $1 (1)
  239. defaultQuality             ds.w    1                ; offset: $2 (2)        ;  The default quality value 
  240. currentQuality             ds.w    1                ; offset: $4 (4)        ;  The current quality value 
  241. qualityCount             ds.w    1                ; offset: $6 (6)        ;  The number of quality menu items in popup menu 
  242. qualityNames             ds.b    1                ; offset: $8 (8) <-- really an array of length one ;  An array of packed pascal strings for popup menu titles 
  243.                          ORG 10
  244. sizeof                     EQU *                    ; size:   $A (10)
  245.                         ENDR
  246.  
  247. ;  gxFileDestinationTag COLLECTION ITEM 
  248.  
  249. gxFileDestinationTag            EQU        'dest'
  250. gxFileDestinationInfo    RECORD 0
  251. toFile                     ds.b    1                ; offset: $0 (0)        ;  True if destination is a file 
  252. padByte                     ds.b    1                ; offset: $1 (1)
  253. sizeof                     EQU *                    ; size:   $2 (2)
  254.                         ENDR
  255.  
  256. ;  gxFileLocationTag COLLECTION ITEM 
  257.  
  258. gxFileLocationTag                EQU        'floc'
  259. gxFileLocationInfo        RECORD 0
  260. fileSpec                 ds        FSSpec            ; offset: $0 (0)        ;  Location to put file, if destination is file 
  261. sizeof                     EQU *                    ; size:   $46 (70)
  262.                         ENDR
  263.  
  264. ;  gxFileFormatTag COLLECTION ITEM 
  265.  
  266. gxFileFormatTag                    EQU        'ffmt'
  267. gxFileFormatInfo        RECORD 0
  268. fileFormatName             ds        Str31            ; offset: $0 (0)        ;  Name of file format (e.g. "PostScript") if destination is file 
  269. sizeof                     EQU *                    ; size:   $20 (32)
  270.                         ENDR
  271.  
  272. ;  gxFileFontsTag COLLECTION ITEM 
  273.  
  274. gxFileFontsTag                    EQU        'incf'
  275. gxFileFontsInfo            RECORD 0
  276. includeFonts             ds.b    1                ; offset: $0 (0)        ;  Which fonts to include, if destination is file 
  277. padByte                     ds.b    1                ; offset: $1 (1)
  278. sizeof                     EQU *                    ; size:   $2 (2)
  279.                         ENDR
  280. ;  includeFonts field constants 
  281.  
  282. gxIncludeNoFonts                EQU        1                    ; Include no fonts 
  283. gxIncludeAllFonts                EQU        2                    ; Include all fonts 
  284. gxIncludeNonStandardFonts        EQU        3                    ; Include only fonts that aren't in the standard LW set 
  285.  
  286. ;  gxPaperFeedTag COLLECTION ITEM 
  287.  
  288. gxPaperFeedTag                    EQU        'feed'
  289. gxPaperFeedInfo            RECORD 0
  290. autoFeed                 ds.b    1                ; offset: $0 (0)        ;  True if automatic feed, false if manual 
  291. padByte                     ds.b    1                ; offset: $1 (1)
  292. sizeof                     EQU *                    ; size:   $2 (2)
  293.                         ENDR
  294.  
  295. ;  gxTrayFeedTag COLLECTION ITEM 
  296.  
  297. gxTrayFeedTag                    EQU        'tray'
  298. ; typedef long                             gxTrayIndex
  299.  
  300. gxTrayFeedInfo            RECORD 0
  301. feedTrayIndex             ds.l    1                ; offset: $0 (0)        ;  Tray to feed paper from 
  302. manualFeedThisPage         ds.b    1                ; offset: $4 (4)        ;  Signals manual feeding for the page 
  303. padByte                     ds.b    1                ; offset: $5 (5)
  304. sizeof                     EQU *                    ; size:   $6 (6)
  305.                         ENDR
  306.  
  307. ;  gxManualFeedTag COLLECTION ITEM 
  308.  
  309. gxManualFeedTag                    EQU        'manf'
  310. gxManualFeedInfo        RECORD 0
  311. numPaperTypeNames         ds.l    1                ; offset: $0 (0)        ;  Number of paperTypes to manually feed 
  312. paperTypeNames             ds        Str31            ; offset: $4 (4) <-- really an array of length one ;  Array of names of paperTypes to manually feed 
  313. sizeof                     EQU *                    ; size:   $24 (36)
  314.                         ENDR
  315.  
  316. ;  gxNormalMappingTag COLLECTION ITEM 
  317.  
  318. gxNormalMappingTag                EQU        'nmap'
  319. gxNormalMappingInfo        RECORD 0
  320. normalPaperMapping         ds.b    1                ; offset: $0 (0)        ;  True if not overriding normal paper mapping 
  321. padByte                     ds.b    1                ; offset: $1 (1)
  322. sizeof                     EQU *                    ; size:   $2 (2)
  323.                         ENDR
  324.  
  325. ;  gxSpecialMappingTag COLLECTION ITEM 
  326.  
  327. gxSpecialMappingTag                EQU        'smap'
  328. gxSpecialMappingInfo    RECORD 0
  329. specialMapping             ds.b    1                ; offset: $0 (0)        ;  Enumerated redirect, scale or tile setting 
  330. padByte                     ds.b    1                ; offset: $1 (1)
  331. sizeof                     EQU *                    ; size:   $2 (2)
  332.                         ENDR
  333. ;  specialMapping field constants 
  334.  
  335. gxRedirectPages                    EQU        1                    ; Redirect pages to a papertype and clip if necessary 
  336. gxScalePages                    EQU        2                    ; Scale pages if necessary 
  337. gxTilePages                        EQU        3                    ; Tile pages if necessary 
  338.  
  339. ;  gxTrayMappingTag COLLECTION ITEM 
  340.  
  341. gxTrayMappingTag                EQU        'tmap'
  342. gxTrayMappingInfo        RECORD 0
  343. mapPaperToTray             ds.l    1                ; offset: $0 (0)        ;  Tray to map all paper to 
  344. sizeof                     EQU *                    ; size:   $4 (4)
  345.                         ENDR
  346.  
  347. ;  gxPaperMappingTag COLLECTION ITEM 
  348. ;  This collection item contains a flattened paper type resource 
  349.  
  350. gxPaperMappingTag                EQU        'pmap'
  351.  
  352. ;  gxPrintPanelTag COLLECTION ITEM 
  353.  
  354. gxPrintPanelTag                    EQU        'ppan'
  355. gxPrintPanelInfo        RECORD 0
  356. startPanelName             ds        Str31            ; offset: $0 (0)        ;  Name of starting panel in Print dialog 
  357. sizeof                     EQU *                    ; size:   $20 (32)
  358.                         ENDR
  359.  
  360. ;  gxFormatPanelTag COLLECTION ITEM 
  361.  
  362. gxFormatPanelTag                EQU        'fpan'
  363. gxFormatPanelInfo        RECORD 0
  364. startPanelName             ds        Str31            ; offset: $0 (0)        ;  Name of starting panel in Format dialog 
  365. sizeof                     EQU *                    ; size:   $20 (32)
  366.                         ENDR
  367.  
  368. ;  gxTranslatedDocumentTag COLLECTION ITEM 
  369.  
  370. gxTranslatedDocumentTag            EQU        'trns'
  371. gxTranslatedDocumentInfo RECORD 0
  372. translatorInfo             ds.l    1                ; offset: $0 (0)        ;  Information from the translation process 
  373. sizeof                     EQU *                    ; size:   $4 (4)
  374.                         ENDR
  375.  
  376. ;  gxCoverPageTag COLLECTION ITEM 
  377.  
  378. gxCoverPageTag                    EQU        'cvpg'
  379.  
  380. gxCoverPageInfo            RECORD 0
  381. coverPage                 ds.l    1                ; offset: $0 (0)        ;  Use same enum values as for PrintRecord field in GXPrinterDrivers.h 
  382. sizeof                     EQU *                    ; size:   $4 (4)
  383.                         ENDR
  384. ;
  385. ;    >>>>>> FORMAT COLLECTION ITEMS <<<<<<
  386. ;
  387. ;
  388.  
  389. ;  gxPaperTypeLockTag COLLECTION ITEM 
  390.  
  391. gxPaperTypeLockTag                EQU        'ptlk'
  392. gxPaperTypeLockInfo        RECORD 0
  393. paperTypeLocked             ds.b    1                ; offset: $0 (0)        ;  True if format's paperType is locked 
  394. padByte                     ds.b    1                ; offset: $1 (1)
  395. sizeof                     EQU *                    ; size:   $2 (2)
  396.                         ENDR
  397.  
  398. ;  gxOrientationTag COLLECTION ITEM 
  399.  
  400. gxOrientationTag                EQU        'layo'
  401. gxOrientationInfo        RECORD 0
  402. orientation                 ds.b    1                ; offset: $0 (0)        ;  An enumerated orientation value 
  403. padByte                     ds.b    1                ; offset: $1 (1)
  404. sizeof                     EQU *                    ; size:   $2 (2)
  405.                         ENDR
  406. ;  orientation field constants 
  407.  
  408. gxPortraitLayout                EQU        0                    ; Portrait 
  409. gxLandscapeLayout                EQU        1                    ; Landscape 
  410. gxRotatedPortraitLayout            EQU        2                    ; Portrait, rotated 180° 
  411. gxRotatedLandscapeLayout        EQU        3                    ; Landscape, rotated 180°  
  412.  
  413. ;  gxScalingTag COLLECTION ITEM 
  414.  
  415. gxScalingTag                    EQU        'scal'
  416. gxScalingInfo            RECORD 0
  417. horizontalScaleFactor     ds.l    1                ; offset: $0 (0)        ;  Current horizontal scaling factor 
  418. verticalScaleFactor         ds.l    1                ; offset: $4 (4)        ;  Current vertical scaling factor 
  419. minScaling                 ds.w    1                ; offset: $8 (8)        ;  Minimum scaling allowed 
  420. maxScaling                 ds.w    1                ; offset: $A (10)        ;  Maximum scaling allowed 
  421. sizeof                     EQU *                    ; size:   $C (12)
  422.                         ENDR
  423.  
  424. ;  gxDirectModeTag COLLECTION ITEM 
  425.  
  426. gxDirectModeTag                    EQU        'dirm'
  427. gxDirectModeInfo        RECORD 0
  428. directModeOn             ds.b    1                ; offset: $0 (0)        ;  True if a direct mode is enabled 
  429. padByte                     ds.b    1                ; offset: $1 (1)
  430. sizeof                     EQU *                    ; size:   $2 (2)
  431.                         ENDR
  432.  
  433. ;  gxFormatHalftoneTag COLLECTION ITEM 
  434.  
  435. gxFormatHalftoneTag                EQU        'half'
  436. gxFormatHalftoneInfo    RECORD 0
  437. numHalftones             ds.l    1                ; offset: $0 (0)        ;  Number of halftone records 
  438. halftones                 ds        gxHalftone        ; offset: $4 (4) <-- really an array of length one ;  The halftone records 
  439. sizeof                     EQU *                    ; size:   $38 (56)
  440.                         ENDR
  441.  
  442. ;  gxInvertPageTag COLLECTION ITEM 
  443.  
  444. gxInvertPageTag                    EQU        'invp'
  445. gxInvertPageInfo        RECORD 0
  446. padByte                     ds.b    1                ; offset: $0 (0)
  447. invert                     ds.b    1                ; offset: $1 (1)        ;  If true, invert page 
  448. sizeof                     EQU *                    ; size:   $2 (2)
  449.                         ENDR
  450.  
  451. ;  gxFlipPageHorizontalTag COLLECTION ITEM 
  452.  
  453. gxFlipPageHorizontalTag            EQU        'flph'
  454. gxFlipPageHorizontalInfo RECORD 0
  455. padByte                     ds.b    1                ; offset: $0 (0)
  456. flipHorizontal             ds.b    1                ; offset: $1 (1)        ;  If true, flip x coordinates on page 
  457. sizeof                     EQU *                    ; size:   $2 (2)
  458.                         ENDR
  459.  
  460. ;  gxFlipPageVerticalTag COLLECTION ITEM 
  461.  
  462. gxFlipPageVerticalTag            EQU        'flpv'
  463. gxFlipPageVerticalInfo    RECORD 0
  464. padByte                     ds.b    1                ; offset: $0 (0)
  465. flipVertical             ds.b    1                ; offset: $1 (1)        ;  If true, flip y coordinates on page 
  466. sizeof                     EQU *                    ; size:   $2 (2)
  467.                         ENDR
  468.  
  469. ;  gxPreciseBitmapsTag COLLECTION ITEM 
  470.  
  471. gxPreciseBitmapsTag                EQU        'pbmp'
  472. gxPreciseBitmapInfo        RECORD 0
  473. preciseBitmaps             ds.b    1                ; offset: $0 (0)        ;  If true, scale page by 96% 
  474. padByte                     ds.b    1                ; offset: $1 (1)
  475. sizeof                     EQU *                    ; size:   $2 (2)
  476.                         ENDR
  477.  
  478. ;
  479. ;    >>>>>> PAPERTYPE COLLECTION ITEMS <<<<<<
  480. ;
  481. ;
  482.  
  483. ;  gxBaseTag COLLECTION ITEM 
  484.  
  485. gxBaseTag                        EQU        'base'
  486. gxBaseInfo                RECORD 0
  487. baseType                 ds.l    1                ; offset: $0 (0)        ;  PaperType's base type 
  488. sizeof                     EQU *                    ; size:   $4 (4)
  489.                         ENDR
  490. ;  baseType field constants 
  491.  
  492. gxUnknownBase                    EQU        0                    ; Base paper type from which this paper type is 
  493. gxUSLetterBase                    EQU        1                    ; derived.  This is not a complete set. 
  494. gxUSLegalBase                    EQU        2
  495. gxA4LetterBase                    EQU        3
  496. gxB5LetterBase                    EQU        4
  497. gxTabloidBase                    EQU        5
  498.  
  499. ;  gxCreatorTag COLLECTION ITEM 
  500.  
  501. gxCreatorTag                    EQU        'crea'
  502. gxCreatorInfo            RECORD 0
  503. creator                     ds.l    1                ; offset: $0 (0)        ;  PaperType's creator 
  504. sizeof                     EQU *                    ; size:   $4 (4)
  505.                         ENDR
  506. ;  gxUnitsTag COLLECTION ITEM 
  507.  
  508. gxUnitsTag                        EQU        'unit'
  509. gxUnitsInfo                RECORD 0
  510. units                     ds.b    1                ; offset: $0 (0)        ;  PaperType's units (used by PaperType Editor). 
  511. padByte                     ds.b    1                ; offset: $1 (1)
  512. sizeof                     EQU *                    ; size:   $2 (2)
  513.                         ENDR
  514. ;  units field constants 
  515.  
  516. gxPicas                            EQU        0                    ; Pica measurement 
  517. gxMMs                            EQU        1                    ; Millimeter measurement 
  518. gxInches                        EQU        2                    ; Inches measurement 
  519.  
  520. ;  gxFlagsTag COLLECTION ITEM 
  521.  
  522. gxFlagsTag                        EQU        'flag'
  523. gxFlagsInfo                RECORD 0
  524. flags                     ds.l    1                ; offset: $0 (0)        ;  PaperType's flags 
  525. sizeof                     EQU *                    ; size:   $4 (4)
  526.                         ENDR
  527. ;  flags field constants 
  528.  
  529. gxOldPaperTypeFlag                EQU        $00800000            ; Indicates a paper type for compatibility printing 
  530. gxNewPaperTypeFlag                EQU        $00400000            ; Indicates a paper type for QuickDraw GX-aware printing 
  531. gxOldAndNewFlag                    EQU        $00C00000            ; Indicates a paper type that's both old and new 
  532. gxDefaultPaperTypeFlag            EQU        $00100000            ; Indicates the default paper type in the group 
  533.  
  534. ;  gxCommentTag COLLECTION ITEM 
  535.  
  536. gxCommentTag                    EQU        'cmnt'
  537. gxCommentInfo            RECORD 0
  538. comment                     ds        Str255            ; offset: $0 (0)        ;  PaperType's comment 
  539. sizeof                     EQU *                    ; size:   $100 (256)
  540.                         ENDR
  541.  
  542. ;
  543. ;    >>>>>> PRINTER VIEWDEVICE TAGS <<<<<<
  544. ;
  545. ;
  546.  
  547. ;  gxPenTableTag COLLECTION ITEM 
  548.  
  549. gxPenTableTag                    EQU        'pent'
  550. gxPenTableEntry            RECORD 0
  551. penName                     ds        Str31            ; offset: $0 (0)        ;  Name of the pen 
  552. penColor                 ds        gxColor            ; offset: $20 (32)        ;  Color to use from the color set 
  553. penThickness             ds.l    1                ; offset: $30 (48)        ;  Size of the pen 
  554. penUnits                 ds.w    1                ; offset: $34 (52)        ;  Specifies units in which pen thickness is defined 
  555. penPosition                 ds.w    1                ; offset: $36 (54)        ;  Pen position in the carousel, -1 (kPenNotLoaded) if not loaded 
  556. sizeof                     EQU *                    ; size:   $38 (56)
  557.                         ENDR
  558. gxPenTable                RECORD 0
  559. numPens                     ds.l    1                ; offset: $0 (0)        ;  Number of pen entries in the following array 
  560. pens                     ds        gxPenTableEntry ; offset: $4 (4) <-- really an array of length one ;  Array of pen entries 
  561. sizeof                     EQU *                    ; size:   $3C (60)
  562.                         ENDR
  563. ; typedef struct gxPenTable *            gxPenTablePtr
  564.  
  565. ; typedef gxPenTablePtr *                gxPenTableHdl
  566.  
  567. ;  penUnits field constants 
  568.  
  569. gxDeviceUnits                    EQU        0
  570. gxMMUnits                        EQU        1
  571. gxInchesUnits                    EQU        2
  572. ;  penPosition field constants 
  573.  
  574. gxPenNotLoaded                    EQU        -1
  575.  
  576. ;
  577. ;    >>>>>> DIALOG-RELATED CONSTANTS AND TYPES <<<<<<
  578. ;
  579. ;
  580.  
  581. ; typedef long                             gxDialogResult
  582.  
  583.  
  584. gxCancelSelected                EQU        0
  585. gxOKSelected                    EQU        1
  586. gxRevertSelected                EQU        2
  587.  
  588. gxEditMenuRecord        RECORD 0
  589. editMenuID                 ds.w    1                ; offset: $0 (0)
  590. cutItem                     ds.w    1                ; offset: $2 (2)
  591. copyItem                 ds.w    1                ; offset: $4 (4)
  592. pasteItem                 ds.w    1                ; offset: $6 (6)
  593. clearItem                 ds.w    1                ; offset: $8 (8)
  594. undoItem                 ds.w    1                ; offset: $A (10)
  595. sizeof                     EQU *                    ; size:   $C (12)
  596.                         ENDR
  597.  
  598. ;
  599. ;    >>>>>> JOB FORMAT MODE CONSTANTS AND TYPES <<<<<<
  600. ;
  601. ;
  602.  
  603. ; typedef OSType                         gxJobFormatMode
  604.  
  605. gxJobFormatModeTable    RECORD 0
  606. numModes                 ds.l    1                ; offset: $0 (0)        ;  Number of job format modes to choose from 
  607. modes                     ds.l    1                ; offset: $4 (4) <-- really an array of length one ;  The job format modes 
  608. sizeof                     EQU *                    ; size:   $8 (8)
  609.                         ENDR
  610. ; typedef struct gxJobFormatModeTable *    gxJobFormatModeTablePtr
  611.  
  612. ; typedef gxJobFormatModeTablePtr *        gxJobFormatModeTableHdl
  613.  
  614.  
  615. gxGraphicsJobFormatMode            EQU        'grph'
  616. gxTextJobFormatMode                EQU        'text'
  617. gxPostScriptJobFormatMode        EQU        'post'
  618. ; typedef long                             gxQueryType
  619.  
  620.  
  621. gxGetJobFormatLineConstraintQuery EQU    0
  622. gxGetJobFormatFontsQuery        EQU        1
  623. gxGetJobFormatFontCommonStylesQuery EQU    2
  624. gxGetJobFormatFontConstraintQuery EQU    3
  625. gxSetStyleJobFormatCommonStyleQuery EQU    4
  626.  
  627. ;  Structures used for Text mode field constants 
  628. gxPositionConstraintTable RECORD 0
  629. phase                     ds        gxPoint            ; offset: $0 (0)        ;  Position phase 
  630. offset                     ds        gxPoint            ; offset: $8 (8)        ;  Position offset 
  631. numSizes                 ds.l    1                ; offset: $10 (16)        ;  Number of available font sizes 
  632. sizes                     ds.l    1                ; offset: $14 (20) <-- really an array of length one ;  The available font sizes 
  633. sizeof                     EQU *                    ; size:   $18 (24)
  634.                         ENDR
  635. ; typedef struct gxPositionConstraintTable * gxPositionConstraintTablePtr
  636.  
  637. ; typedef gxPositionConstraintTablePtr * gxPositionConstraintTableHdl
  638.  
  639. ;  numSizes field constants 
  640.  
  641. gxConstraintRange                EQU        -1
  642. gxStyleNameTable        RECORD 0
  643. numStyleNames             ds.l    1                ; offset: $0 (0)        ;  Number of style names 
  644. styleNames                 ds        Str255            ; offset: $4 (4) <-- really an array of length one ;  The style names 
  645. sizeof                     EQU *                    ; size:   $104 (260)
  646.                         ENDR
  647. ; typedef struct gxStyleNameTable *        gxStyleNameTablePtr
  648.  
  649. ; typedef gxStyleNameTablePtr *            gxStyleNameTableHdl
  650.  
  651. gxFontTable                RECORD 0
  652. numFonts                 ds.l    1                ; offset: $0 (0)        ;  Number of font references 
  653. fonts                     ds.l    1                ; offset: $4 (4) <-- really an array of length one ;  The font references 
  654. sizeof                     EQU *                    ; size:   $8 (8)
  655.                         ENDR
  656. ; typedef struct gxFontTable *            gxFontTablePtr
  657.  
  658. ; typedef gxFontTablePtr *                gxFontTableHdl
  659.  
  660. ;  ------------------------------------------------------------------------------
  661. ;
  662. ;                                Printing Manager API Functions
  663. ;
  664. ;-------------------------------------------------------------------------------- 
  665.  
  666. ;    Global Routines
  667. ;
  668.  
  669. ;
  670. ; pascal OSErr GXInitPrinting(void )
  671. ;
  672.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  673.         Macro
  674.         _GXInitPrinting
  675.             move.l              #$00000000,D0
  676.             dc.w                $ABFE
  677.         EndM
  678.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  679.         IMPORT_CFM_FUNCTION GXInitPrinting
  680.     ENDIF
  681.  
  682. ;
  683. ; pascal OSErr GXExitPrinting(void )
  684. ;
  685.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  686.         Macro
  687.         _GXExitPrinting
  688.             move.l              #$00000001,D0
  689.             dc.w                $ABFE
  690.         EndM
  691.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  692.         IMPORT_CFM_FUNCTION GXExitPrinting
  693.     ENDIF
  694.  
  695.  
  696. ;    Error-Handling Routines
  697. ;
  698.  
  699. ;
  700. ; pascal OSErr GXGetJobError(gxJob aJob)
  701. ;
  702.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  703.         Macro
  704.         _GXGetJobError
  705.             move.l              #$0000000E,D0
  706.             dc.w                $ABFE
  707.         EndM
  708.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  709.         IMPORT_CFM_FUNCTION GXGetJobError
  710.     ENDIF
  711.  
  712. ;
  713. ; pascal void GXSetJobError(gxJob aJob, OSErr anErr)
  714. ;
  715.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  716.         Macro
  717.         _GXSetJobError
  718.             move.l              #$0000000F,D0
  719.             dc.w                $ABFE
  720.         EndM
  721.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  722.         IMPORT_CFM_FUNCTION GXSetJobError
  723.     ENDIF
  724.  
  725.  
  726. ;    Job Routines
  727. ;
  728.  
  729. ;
  730. ; pascal OSErr GXNewJob(gxJob *aJob)
  731. ;
  732.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  733.         Macro
  734.         _GXNewJob
  735.             move.l              #$00000002,D0
  736.             dc.w                $ABFE
  737.         EndM
  738.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  739.         IMPORT_CFM_FUNCTION GXNewJob
  740.     ENDIF
  741.  
  742. ;
  743. ; pascal OSErr GXDisposeJob(gxJob aJob)
  744. ;
  745.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  746.         Macro
  747.         _GXDisposeJob
  748.             move.l              #$00000003,D0
  749.             dc.w                $ABFE
  750.         EndM
  751.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  752.         IMPORT_CFM_FUNCTION GXDisposeJob
  753.     ENDIF
  754.  
  755. ;
  756. ; pascal void GXFlattenJob(gxJob aJob, GXPrintingFlattenUPP flattenProc, void *aVoid)
  757. ;
  758.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  759.         Macro
  760.         _GXFlattenJob
  761.             move.l              #$00000004,D0
  762.             dc.w                $ABFE
  763.         EndM
  764.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  765.         IMPORT_CFM_FUNCTION GXFlattenJob
  766.     ENDIF
  767.  
  768. ;
  769. ; pascal gxJob GXUnflattenJob(gxJob aJob, GXPrintingFlattenUPP flattenProc, void *aVoid)
  770. ;
  771.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  772.         Macro
  773.         _GXUnflattenJob
  774.             move.l              #$00000005,D0
  775.             dc.w                $ABFE
  776.         EndM
  777.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  778.         IMPORT_CFM_FUNCTION GXUnflattenJob
  779.     ENDIF
  780.  
  781. ;
  782. ; pascal Handle GXFlattenJobToHdl(gxJob aJob, Handle aHdl)
  783. ;
  784.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  785.         Macro
  786.         _GXFlattenJobToHdl
  787.             move.l              #$00000006,D0
  788.             dc.w                $ABFE
  789.         EndM
  790.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  791.         IMPORT_CFM_FUNCTION GXFlattenJobToHdl
  792.     ENDIF
  793.  
  794. ;
  795. ; pascal gxJob GXUnflattenJobFromHdl(gxJob aJob, Handle aHdl)
  796. ;
  797.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  798.         Macro
  799.         _GXUnflattenJobFromHdl
  800.             move.l              #$00000007,D0
  801.             dc.w                $ABFE
  802.         EndM
  803.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  804.         IMPORT_CFM_FUNCTION GXUnflattenJobFromHdl
  805.     ENDIF
  806.  
  807. ;
  808. ; pascal void GXInstallApplicationOverride(gxJob aJob, short messageID, void *override)
  809. ;
  810.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  811.         Macro
  812.         _GXInstallApplicationOverride
  813.             move.l              #$00000008,D0
  814.             dc.w                $ABFE
  815.         EndM
  816.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  817.         IMPORT_CFM_FUNCTION GXInstallApplicationOverride
  818.     ENDIF
  819.  
  820. ;
  821. ; pascal Collection GXGetJobCollection(gxJob aJob)
  822. ;
  823.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  824.         Macro
  825.         _GXGetJobCollection
  826.             move.l              #$0000001D,D0
  827.             dc.w                $ABFE
  828.         EndM
  829.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  830.         IMPORT_CFM_FUNCTION GXGetJobCollection
  831.     ENDIF
  832.  
  833. ;
  834. ; pascal void *GXGetJobRefCon(gxJob aJob)
  835. ;
  836.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  837.         Macro
  838.         _GXGetJobRefCon
  839.             move.l              #$0000001E,D0
  840.             dc.w                $ABFE
  841.         EndM
  842.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  843.         IMPORT_CFM_FUNCTION GXGetJobRefCon
  844.     ENDIF
  845.  
  846. ;
  847. ; pascal void GXSetJobRefCon(gxJob aJob, void *refCon)
  848. ;
  849.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  850.         Macro
  851.         _GXSetJobRefCon
  852.             move.l              #$0000001F,D0
  853.             dc.w                $ABFE
  854.         EndM
  855.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  856.         IMPORT_CFM_FUNCTION GXSetJobRefCon
  857.     ENDIF
  858.  
  859. ;
  860. ; pascal gxJob GXCopyJob(gxJob srcJob, gxJob dstJob)
  861. ;
  862.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  863.         Macro
  864.         _GXCopyJob
  865.             move.l              #$00000020,D0
  866.             dc.w                $ABFE
  867.         EndM
  868.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  869.         IMPORT_CFM_FUNCTION GXCopyJob
  870.     ENDIF
  871.  
  872. ;
  873. ; pascal void GXSelectJobFormattingPrinter(gxJob aJob, Str31 printerName)
  874. ;
  875.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  876.         Macro
  877.         _GXSelectJobFormattingPrinter
  878.             move.l              #$00000021,D0
  879.             dc.w                $ABFE
  880.         EndM
  881.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  882.         IMPORT_CFM_FUNCTION GXSelectJobFormattingPrinter
  883.     ENDIF
  884.  
  885. ;
  886. ; pascal void GXSelectJobOutputPrinter(gxJob aJob, Str31 printerName)
  887. ;
  888.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  889.         Macro
  890.         _GXSelectJobOutputPrinter
  891.             move.l              #$00000022,D0
  892.             dc.w                $ABFE
  893.         EndM
  894.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  895.         IMPORT_CFM_FUNCTION GXSelectJobOutputPrinter
  896.     ENDIF
  897.  
  898. ;
  899. ; pascal void GXForEachJobFormatDo(gxJob aJob, GXFormatUPP formatProc, void *refCon)
  900. ;
  901.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  902.         Macro
  903.         _GXForEachJobFormatDo
  904.             move.l              #$00000023,D0
  905.             dc.w                $ABFE
  906.         EndM
  907.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  908.         IMPORT_CFM_FUNCTION GXForEachJobFormatDo
  909.     ENDIF
  910.  
  911. ;
  912. ; pascal long GXCountJobFormats(gxJob aJob)
  913. ;
  914.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  915.         Macro
  916.         _GXCountJobFormats
  917.             move.l              #$00000024,D0
  918.             dc.w                $ABFE
  919.         EndM
  920.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  921.         IMPORT_CFM_FUNCTION GXCountJobFormats
  922.     ENDIF
  923.  
  924. ;
  925. ; pascal Boolean GXUpdateJob(gxJob aJob)
  926. ;
  927.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  928.         Macro
  929.         _GXUpdateJob
  930.             move.l              #$00000025,D0
  931.             dc.w                $ABFE
  932.         EndM
  933.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  934.         IMPORT_CFM_FUNCTION GXUpdateJob
  935.     ENDIF
  936.  
  937. ;
  938. ; pascal void GXConvertPrintRecord(gxJob aJob, THPrint hPrint)
  939. ;
  940.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  941.         Macro
  942.         _GXConvertPrintRecord
  943.             move.l              #$00000026,D0
  944.             dc.w                $ABFE
  945.         EndM
  946.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  947.         IMPORT_CFM_FUNCTION GXConvertPrintRecord
  948.     ENDIF
  949.  
  950. ;
  951. ; pascal void GXIdleJob(gxJob aJob)
  952. ;
  953.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  954.         Macro
  955.         _GXIdleJob
  956.             move.l              #$00000057,D0
  957.             dc.w                $ABFE
  958.         EndM
  959.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  960.         IMPORT_CFM_FUNCTION GXIdleJob
  961.     ENDIF
  962.  
  963.  
  964. ;    Job Format Modes Routines
  965. ;
  966.  
  967. ;
  968. ; pascal void GXSetAvailableJobFormatModes(gxJob aJob, gxJobFormatModeTableHdl formatModeTable)
  969. ;
  970.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  971.         Macro
  972.         _GXSetAvailableJobFormatModes
  973.             move.l              #$0000003B,D0
  974.             dc.w                $ABFE
  975.         EndM
  976.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  977.         IMPORT_CFM_FUNCTION GXSetAvailableJobFormatModes
  978.     ENDIF
  979.  
  980. ;
  981. ; pascal gxJobFormatMode GXGetPreferredJobFormatMode(gxJob aJob, Boolean *directOnly)
  982. ;
  983.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  984.         Macro
  985.         _GXGetPreferredJobFormatMode
  986.             move.l              #$0000003C,D0
  987.             dc.w                $ABFE
  988.         EndM
  989.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  990.         IMPORT_CFM_FUNCTION GXGetPreferredJobFormatMode
  991.     ENDIF
  992.  
  993. ;
  994. ; pascal gxJobFormatMode GXGetJobFormatMode(gxJob aJob)
  995. ;
  996.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  997.         Macro
  998.         _GXGetJobFormatMode
  999.             move.l              #$0000003D,D0
  1000.             dc.w                $ABFE
  1001.         EndM
  1002.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1003.         IMPORT_CFM_FUNCTION GXGetJobFormatMode
  1004.     ENDIF
  1005.  
  1006. ;
  1007. ; pascal void GXSetJobFormatMode(gxJob aJob, gxJobFormatMode formatMode)
  1008. ;
  1009.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1010.         Macro
  1011.         _GXSetJobFormatMode
  1012.             move.l              #$0000003E,D0
  1013.             dc.w                $ABFE
  1014.         EndM
  1015.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1016.         IMPORT_CFM_FUNCTION GXSetJobFormatMode
  1017.     ENDIF
  1018.  
  1019. ;
  1020. ; pascal void GXJobFormatModeQuery(gxJob aJob, gxQueryType aQueryType, void *srcData, void *dstData)
  1021. ;
  1022.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1023.         Macro
  1024.         _GXJobFormatModeQuery
  1025.             move.l              #$0000003F,D0
  1026.             dc.w                $ABFE
  1027.         EndM
  1028.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1029.         IMPORT_CFM_FUNCTION GXJobFormatModeQuery
  1030.     ENDIF
  1031.  
  1032.  
  1033. ;    Format Routines
  1034. ;
  1035.  
  1036. ;
  1037. ; pascal gxFormat GXNewFormat(gxJob aJob)
  1038. ;
  1039.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1040.         Macro
  1041.         _GXNewFormat
  1042.             move.l              #$00000009,D0
  1043.             dc.w                $ABFE
  1044.         EndM
  1045.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1046.         IMPORT_CFM_FUNCTION GXNewFormat
  1047.     ENDIF
  1048.  
  1049. ;
  1050. ; pascal void GXDisposeFormat(gxFormat aFormat)
  1051. ;
  1052.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1053.         Macro
  1054.         _GXDisposeFormat
  1055.             move.l              #$0000000A,D0
  1056.             dc.w                $ABFE
  1057.         EndM
  1058.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1059.         IMPORT_CFM_FUNCTION GXDisposeFormat
  1060.     ENDIF
  1061.  
  1062. ;
  1063. ; pascal gxFormat GXGetJobFormat(gxJob aJob, long whichFormat)
  1064. ;
  1065.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1066.         Macro
  1067.         _GXGetJobFormat
  1068.             move.l              #$00000013,D0
  1069.             dc.w                $ABFE
  1070.         EndM
  1071.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1072.         IMPORT_CFM_FUNCTION GXGetJobFormat
  1073.     ENDIF
  1074.  
  1075. ;
  1076. ; pascal gxJob GXGetFormatJob(gxFormat aFormat)
  1077. ;
  1078.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1079.         Macro
  1080.         _GXGetFormatJob
  1081.             move.l              #$00000014,D0
  1082.             dc.w                $ABFE
  1083.         EndM
  1084.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1085.         IMPORT_CFM_FUNCTION GXGetFormatJob
  1086.     ENDIF
  1087.  
  1088. ;
  1089. ; pascal gxPaperType GXGetFormatPaperType(gxFormat aFormat)
  1090. ;
  1091.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1092.         Macro
  1093.         _GXGetFormatPaperType
  1094.             move.l              #$00000015,D0
  1095.             dc.w                $ABFE
  1096.         EndM
  1097.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1098.         IMPORT_CFM_FUNCTION GXGetFormatPaperType
  1099.     ENDIF
  1100.  
  1101. ;
  1102. ; pascal void GXGetFormatDimensions(gxFormat aFormat, gxRectangle *pageSize, gxRectangle *paperSize)
  1103. ;
  1104.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1105.         Macro
  1106.         _GXGetFormatDimensions
  1107.             move.l              #$00000016,D0
  1108.             dc.w                $ABFE
  1109.         EndM
  1110.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1111.         IMPORT_CFM_FUNCTION GXGetFormatDimensions
  1112.     ENDIF
  1113.  
  1114. ;
  1115. ; pascal Collection GXGetFormatCollection(gxFormat aFormat)
  1116. ;
  1117.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1118.         Macro
  1119.         _GXGetFormatCollection
  1120.             move.l              #$00000033,D0
  1121.             dc.w                $ABFE
  1122.         EndM
  1123.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1124.         IMPORT_CFM_FUNCTION GXGetFormatCollection
  1125.     ENDIF
  1126.  
  1127. ;
  1128. ; pascal void GXChangedFormat(gxFormat aFormat)
  1129. ;
  1130.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1131.         Macro
  1132.         _GXChangedFormat
  1133.             move.l              #$00000034,D0
  1134.             dc.w                $ABFE
  1135.         EndM
  1136.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1137.         IMPORT_CFM_FUNCTION GXChangedFormat
  1138.     ENDIF
  1139.  
  1140. ;
  1141. ; pascal gxFormat GXCopyFormat(gxFormat srcFormat, gxFormat dstFormat)
  1142. ;
  1143.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1144.         Macro
  1145.         _GXCopyFormat
  1146.             move.l              #$00000035,D0
  1147.             dc.w                $ABFE
  1148.         EndM
  1149.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1150.         IMPORT_CFM_FUNCTION GXCopyFormat
  1151.     ENDIF
  1152.  
  1153. ;
  1154. ; pascal gxFormat GXCloneFormat(gxFormat aFormat)
  1155. ;
  1156.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1157.         Macro
  1158.         _GXCloneFormat
  1159.             move.l              #$00000036,D0
  1160.             dc.w                $ABFE
  1161.         EndM
  1162.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1163.         IMPORT_CFM_FUNCTION GXCloneFormat
  1164.     ENDIF
  1165.  
  1166. ;
  1167. ; pascal long GXCountFormatOwners(gxFormat aFormat)
  1168. ;
  1169.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1170.         Macro
  1171.         _GXCountFormatOwners
  1172.             move.l              #$00000037,D0
  1173.             dc.w                $ABFE
  1174.         EndM
  1175.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1176.         IMPORT_CFM_FUNCTION GXCountFormatOwners
  1177.     ENDIF
  1178.  
  1179. ;
  1180. ; pascal void GXGetFormatMapping(gxFormat aFormat, gxMapping *fmtMapping)
  1181. ;
  1182.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1183.         Macro
  1184.         _GXGetFormatMapping
  1185.             move.l              #$00000038,D0
  1186.             dc.w                $ABFE
  1187.         EndM
  1188.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1189.         IMPORT_CFM_FUNCTION GXGetFormatMapping
  1190.     ENDIF
  1191.  
  1192. ;
  1193. ; pascal gxShape GXGetFormatForm(gxFormat aFormat, gxShape *mask)
  1194. ;
  1195.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1196.         Macro
  1197.         _GXGetFormatForm
  1198.             move.l              #$00000039,D0
  1199.             dc.w                $ABFE
  1200.         EndM
  1201.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1202.         IMPORT_CFM_FUNCTION GXGetFormatForm
  1203.     ENDIF
  1204.  
  1205. ;
  1206. ; pascal void GXSetFormatForm(gxFormat aFormat, gxShape form, gxShape mask)
  1207. ;
  1208.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1209.         Macro
  1210.         _GXSetFormatForm
  1211.             move.l              #$0000003A,D0
  1212.             dc.w                $ABFE
  1213.         EndM
  1214.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1215.         IMPORT_CFM_FUNCTION GXSetFormatForm
  1216.     ENDIF
  1217.  
  1218.  
  1219. ;    PaperType Routines
  1220. ;
  1221.  
  1222. ;
  1223. ; pascal gxPaperType GXNewPaperType(gxJob aJob, Str31 name, gxRectangle *pageSize, gxRectangle *paperSize)
  1224. ;
  1225.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1226.         Macro
  1227.         _GXNewPaperType
  1228.             move.l              #$0000000B,D0
  1229.             dc.w                $ABFE
  1230.         EndM
  1231.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1232.         IMPORT_CFM_FUNCTION GXNewPaperType
  1233.     ENDIF
  1234.  
  1235. ;
  1236. ; pascal void GXDisposePaperType(gxPaperType aPaperType)
  1237. ;
  1238.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1239.         Macro
  1240.         _GXDisposePaperType
  1241.             move.l              #$0000000C,D0
  1242.             dc.w                $ABFE
  1243.         EndM
  1244.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1245.         IMPORT_CFM_FUNCTION GXDisposePaperType
  1246.     ENDIF
  1247.  
  1248. ;
  1249. ; pascal gxPaperType GXGetNewPaperType(gxJob aJob, short resID)
  1250. ;
  1251.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1252.         Macro
  1253.         _GXGetNewPaperType
  1254.             move.l              #$0000000D,D0
  1255.             dc.w                $ABFE
  1256.         EndM
  1257.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1258.         IMPORT_CFM_FUNCTION GXGetNewPaperType
  1259.     ENDIF
  1260.  
  1261. ;
  1262. ; pascal long GXCountJobPaperTypes(gxJob aJob, Boolean forFormatDevice)
  1263. ;
  1264.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1265.         Macro
  1266.         _GXCountJobPaperTypes
  1267.             move.l              #$00000042,D0
  1268.             dc.w                $ABFE
  1269.         EndM
  1270.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1271.         IMPORT_CFM_FUNCTION GXCountJobPaperTypes
  1272.     ENDIF
  1273.  
  1274. ;
  1275. ; pascal gxPaperType GXGetJobPaperType(gxJob aJob, long whichPaperType, Boolean forFormatDevice, gxPaperType aPaperType)
  1276. ;
  1277.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1278.         Macro
  1279.         _GXGetJobPaperType
  1280.             move.l              #$00000043,D0
  1281.             dc.w                $ABFE
  1282.         EndM
  1283.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1284.         IMPORT_CFM_FUNCTION GXGetJobPaperType
  1285.     ENDIF
  1286.  
  1287. ;
  1288. ; pascal void GXForEachJobPaperTypeDo(gxJob aJob, GXPaperTypeUPP aProc, void *refCon, Boolean forFormattingPrinter)
  1289. ;
  1290.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1291.         Macro
  1292.         _GXForEachJobPaperTypeDo
  1293.             move.l              #$00000044,D0
  1294.             dc.w                $ABFE
  1295.         EndM
  1296.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1297.         IMPORT_CFM_FUNCTION GXForEachJobPaperTypeDo
  1298.     ENDIF
  1299.  
  1300. ;
  1301. ; pascal gxPaperType GXCopyPaperType(gxPaperType srcPaperType, gxPaperType dstPaperType)
  1302. ;
  1303.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1304.         Macro
  1305.         _GXCopyPaperType
  1306.             move.l              #$00000045,D0
  1307.             dc.w                $ABFE
  1308.         EndM
  1309.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1310.         IMPORT_CFM_FUNCTION GXCopyPaperType
  1311.     ENDIF
  1312.  
  1313. ;
  1314. ; pascal void GXGetPaperTypeName(gxPaperType aPaperType, Str31 papertypeName)
  1315. ;
  1316.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1317.         Macro
  1318.         _GXGetPaperTypeName
  1319.             move.l              #$00000046,D0
  1320.             dc.w                $ABFE
  1321.         EndM
  1322.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1323.         IMPORT_CFM_FUNCTION GXGetPaperTypeName
  1324.     ENDIF
  1325.  
  1326. ;
  1327. ; pascal void GXGetPaperTypeDimensions(gxPaperType aPaperType, gxRectangle *pageSize, gxRectangle *paperSize)
  1328. ;
  1329.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1330.         Macro
  1331.         _GXGetPaperTypeDimensions
  1332.             move.l              #$00000047,D0
  1333.             dc.w                $ABFE
  1334.         EndM
  1335.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1336.         IMPORT_CFM_FUNCTION GXGetPaperTypeDimensions
  1337.     ENDIF
  1338.  
  1339. ;
  1340. ; pascal gxJob GXGetPaperTypeJob(gxPaperType aPaperType)
  1341. ;
  1342.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1343.         Macro
  1344.         _GXGetPaperTypeJob
  1345.             move.l              #$00000048,D0
  1346.             dc.w                $ABFE
  1347.         EndM
  1348.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1349.         IMPORT_CFM_FUNCTION GXGetPaperTypeJob
  1350.     ENDIF
  1351.  
  1352. ;
  1353. ; pascal Collection GXGetPaperTypeCollection(gxPaperType aPaperType)
  1354. ;
  1355.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1356.         Macro
  1357.         _GXGetPaperTypeCollection
  1358.             move.l              #$00000049,D0
  1359.             dc.w                $ABFE
  1360.         EndM
  1361.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1362.         IMPORT_CFM_FUNCTION GXGetPaperTypeCollection
  1363.     ENDIF
  1364.  
  1365.  
  1366. ;    Printer Routines
  1367. ;
  1368.  
  1369. ;
  1370. ; pascal gxPrinter GXGetJobFormattingPrinter(gxJob aJob)
  1371. ;
  1372.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1373.         Macro
  1374.         _GXGetJobFormattingPrinter
  1375.             move.l              #$00000027,D0
  1376.             dc.w                $ABFE
  1377.         EndM
  1378.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1379.         IMPORT_CFM_FUNCTION GXGetJobFormattingPrinter
  1380.     ENDIF
  1381.  
  1382. ;
  1383. ; pascal gxPrinter GXGetJobOutputPrinter(gxJob aJob)
  1384. ;
  1385.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1386.         Macro
  1387.         _GXGetJobOutputPrinter
  1388.             move.l              #$00000028,D0
  1389.             dc.w                $ABFE
  1390.         EndM
  1391.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1392.         IMPORT_CFM_FUNCTION GXGetJobOutputPrinter
  1393.     ENDIF
  1394.  
  1395. ;
  1396. ; pascal gxPrinter GXGetJobPrinter(gxJob aJob)
  1397. ;
  1398.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1399.         Macro
  1400.         _GXGetJobPrinter
  1401.             move.l              #$00000029,D0
  1402.             dc.w                $ABFE
  1403.         EndM
  1404.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1405.         IMPORT_CFM_FUNCTION GXGetJobPrinter
  1406.     ENDIF
  1407.  
  1408. ;
  1409. ; pascal gxJob GXGetPrinterJob(gxPrinter aPrinter)
  1410. ;
  1411.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1412.         Macro
  1413.         _GXGetPrinterJob
  1414.             move.l              #$0000002A,D0
  1415.             dc.w                $ABFE
  1416.         EndM
  1417.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1418.         IMPORT_CFM_FUNCTION GXGetPrinterJob
  1419.     ENDIF
  1420.  
  1421. ;
  1422. ; pascal void GXForEachPrinterViewDeviceDo(gxPrinter aPrinter, GXViewDeviceUPP aProc, void *refCon)
  1423. ;
  1424.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1425.         Macro
  1426.         _GXForEachPrinterViewDeviceDo
  1427.             move.l              #$0000002B,D0
  1428.             dc.w                $ABFE
  1429.         EndM
  1430.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1431.         IMPORT_CFM_FUNCTION GXForEachPrinterViewDeviceDo
  1432.     ENDIF
  1433.  
  1434. ;
  1435. ; pascal long GXCountPrinterViewDevices(gxPrinter aPrinter)
  1436. ;
  1437.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1438.         Macro
  1439.         _GXCountPrinterViewDevices
  1440.             move.l              #$0000002C,D0
  1441.             dc.w                $ABFE
  1442.         EndM
  1443.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1444.         IMPORT_CFM_FUNCTION GXCountPrinterViewDevices
  1445.     ENDIF
  1446.  
  1447. ;
  1448. ; pascal gxViewDevice GXGetPrinterViewDevice(gxPrinter aPrinter, long whichViewDevice)
  1449. ;
  1450.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1451.         Macro
  1452.         _GXGetPrinterViewDevice
  1453.             move.l              #$0000002D,D0
  1454.             dc.w                $ABFE
  1455.         EndM
  1456.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1457.         IMPORT_CFM_FUNCTION GXGetPrinterViewDevice
  1458.     ENDIF
  1459.  
  1460. ;
  1461. ; pascal void GXSelectPrinterViewDevice(gxPrinter aPrinter, long whichViewDevice)
  1462. ;
  1463.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1464.         Macro
  1465.         _GXSelectPrinterViewDevice
  1466.             move.l              #$0000002E,D0
  1467.             dc.w                $ABFE
  1468.         EndM
  1469.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1470.         IMPORT_CFM_FUNCTION GXSelectPrinterViewDevice
  1471.     ENDIF
  1472.  
  1473. ;
  1474. ; pascal void GXGetPrinterName(gxPrinter aPrinter, Str31 printerName)
  1475. ;
  1476.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1477.         Macro
  1478.         _GXGetPrinterName
  1479.             move.l              #$0000002F,D0
  1480.             dc.w                $ABFE
  1481.         EndM
  1482.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1483.         IMPORT_CFM_FUNCTION GXGetPrinterName
  1484.     ENDIF
  1485.  
  1486. ;
  1487. ; pascal OSType GXGetPrinterType(gxPrinter aPrinter)
  1488. ;
  1489.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1490.         Macro
  1491.         _GXGetPrinterType
  1492.             move.l              #$00000030,D0
  1493.             dc.w                $ABFE
  1494.         EndM
  1495.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1496.         IMPORT_CFM_FUNCTION GXGetPrinterType
  1497.     ENDIF
  1498.  
  1499. ;
  1500. ; pascal void GXGetPrinterDriverName(gxPrinter aPrinter, Str31 driverName)
  1501. ;
  1502.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1503.         Macro
  1504.         _GXGetPrinterDriverName
  1505.             move.l              #$00000031,D0
  1506.             dc.w                $ABFE
  1507.         EndM
  1508.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1509.         IMPORT_CFM_FUNCTION GXGetPrinterDriverName
  1510.     ENDIF
  1511.  
  1512. ;
  1513. ; pascal OSType GXGetPrinterDriverType(gxPrinter aPrinter)
  1514. ;
  1515.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1516.         Macro
  1517.         _GXGetPrinterDriverType
  1518.             move.l              #$00000032,D0
  1519.             dc.w                $ABFE
  1520.         EndM
  1521.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1522.         IMPORT_CFM_FUNCTION GXGetPrinterDriverType
  1523.     ENDIF
  1524.  
  1525.  
  1526. ;    Dialog Routines
  1527. ;
  1528.  
  1529. ;
  1530. ; pascal gxDialogResult GXJobDefaultFormatDialog(gxJob aJob, gxEditMenuRecord *anEditMenuRec)
  1531. ;
  1532.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1533.         Macro
  1534.         _GXJobDefaultFormatDialog
  1535.             move.l              #$00000010,D0
  1536.             dc.w                $ABFE
  1537.         EndM
  1538.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1539.         IMPORT_CFM_FUNCTION GXJobDefaultFormatDialog
  1540.     ENDIF
  1541.  
  1542. ;
  1543. ; pascal gxDialogResult GXJobPrintDialog(gxJob aJob, gxEditMenuRecord *anEditMenuRec)
  1544. ;
  1545.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1546.         Macro
  1547.         _GXJobPrintDialog
  1548.             move.l              #$00000011,D0
  1549.             dc.w                $ABFE
  1550.         EndM
  1551.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1552.         IMPORT_CFM_FUNCTION GXJobPrintDialog
  1553.     ENDIF
  1554.  
  1555. ;
  1556. ; pascal gxDialogResult GXFormatDialog(gxFormat aFormat, gxEditMenuRecord *anEditMenuRec, StringPtr title)
  1557. ;
  1558.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1559.         Macro
  1560.         _GXFormatDialog
  1561.             move.l              #$00000012,D0
  1562.             dc.w                $ABFE
  1563.         EndM
  1564.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1565.         IMPORT_CFM_FUNCTION GXFormatDialog
  1566.     ENDIF
  1567.  
  1568. ;
  1569. ; pascal void GXEnableJobScalingPanel(gxJob aJob, Boolean enabled)
  1570. ;
  1571.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1572.         Macro
  1573.         _GXEnableJobScalingPanel
  1574.             move.l              #$00000040,D0
  1575.             dc.w                $ABFE
  1576.         EndM
  1577.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1578.         IMPORT_CFM_FUNCTION GXEnableJobScalingPanel
  1579.     ENDIF
  1580.  
  1581. ;
  1582. ; pascal void GXGetJobPanelDimensions(gxJob aJob, Rect *panelArea)
  1583. ;
  1584.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1585.         Macro
  1586.         _GXGetJobPanelDimensions
  1587.             move.l              #$00000041,D0
  1588.             dc.w                $ABFE
  1589.         EndM
  1590.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1591.         IMPORT_CFM_FUNCTION GXGetJobPanelDimensions
  1592.     ENDIF
  1593.  
  1594.  
  1595. ;    Spooling Routines
  1596. ;
  1597.  
  1598. ;
  1599. ; pascal void GXGetJobPageRange(gxJob theJob, long *firstPage, long *lastPage)
  1600. ;
  1601.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1602.         Macro
  1603.         _GXGetJobPageRange
  1604.             move.l              #$00000017,D0
  1605.             dc.w                $ABFE
  1606.         EndM
  1607.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1608.         IMPORT_CFM_FUNCTION GXGetJobPageRange
  1609.     ENDIF
  1610.  
  1611. ;
  1612. ; pascal void GXStartJob(gxJob theJob, StringPtr docName, long pageCount)
  1613. ;
  1614.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1615.         Macro
  1616.         _GXStartJob
  1617.             move.l              #$00000018,D0
  1618.             dc.w                $ABFE
  1619.         EndM
  1620.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1621.         IMPORT_CFM_FUNCTION GXStartJob
  1622.     ENDIF
  1623.  
  1624. ;
  1625. ; pascal void GXPrintPage(gxJob theJob, long pageNumber, gxFormat theFormat, gxShape thePage)
  1626. ;
  1627.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1628.         Macro
  1629.         _GXPrintPage
  1630.             move.l              #$00000019,D0
  1631.             dc.w                $ABFE
  1632.         EndM
  1633.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1634.         IMPORT_CFM_FUNCTION GXPrintPage
  1635.     ENDIF
  1636.  
  1637. ;
  1638. ; pascal Boolean GXStartPage(gxJob theJob, long pageNumber, gxFormat theFormat, long numViewPorts, gxViewPort *viewPortList)
  1639. ;
  1640.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1641.         Macro
  1642.         _GXStartPage
  1643.             move.l              #$0000001A,D0
  1644.             dc.w                $ABFE
  1645.         EndM
  1646.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1647.         IMPORT_CFM_FUNCTION GXStartPage
  1648.     ENDIF
  1649.  
  1650. ;
  1651. ; pascal void GXFinishPage(gxJob theJob)
  1652. ;
  1653.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1654.         Macro
  1655.         _GXFinishPage
  1656.             move.l              #$0000001B,D0
  1657.             dc.w                $ABFE
  1658.         EndM
  1659.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1660.         IMPORT_CFM_FUNCTION GXFinishPage
  1661.     ENDIF
  1662.  
  1663. ;
  1664. ; pascal void GXFinishJob(gxJob theJob)
  1665. ;
  1666.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1667.         Macro
  1668.         _GXFinishJob
  1669.             move.l              #$0000001C,D0
  1670.             dc.w                $ABFE
  1671.         EndM
  1672.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1673.         IMPORT_CFM_FUNCTION GXFinishJob
  1674.     ENDIF
  1675.  
  1676.  
  1677. ;    PrintFile Routines
  1678. ;
  1679.  
  1680. ;
  1681. ; pascal gxPrintFile GXOpenPrintFile(gxJob theJob, FSSpecPtr anFSSpec, char permission)
  1682. ;
  1683.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1684.         Macro
  1685.         _GXOpenPrintFile
  1686.             move.l              #$0000004A,D0
  1687.             dc.w                $ABFE
  1688.         EndM
  1689.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1690.         IMPORT_CFM_FUNCTION GXOpenPrintFile
  1691.     ENDIF
  1692.  
  1693. ;
  1694. ; pascal void GXClosePrintFile(gxPrintFile aPrintFile)
  1695. ;
  1696.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1697.         Macro
  1698.         _GXClosePrintFile
  1699.             move.l              #$0000004B,D0
  1700.             dc.w                $ABFE
  1701.         EndM
  1702.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1703.         IMPORT_CFM_FUNCTION GXClosePrintFile
  1704.     ENDIF
  1705.  
  1706. ;
  1707. ; pascal gxJob GXGetPrintFileJob(gxPrintFile aPrintFile)
  1708. ;
  1709.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1710.         Macro
  1711.         _GXGetPrintFileJob
  1712.             move.l              #$0000004C,D0
  1713.             dc.w                $ABFE
  1714.         EndM
  1715.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1716.         IMPORT_CFM_FUNCTION GXGetPrintFileJob
  1717.     ENDIF
  1718.  
  1719. ;
  1720. ; pascal long GXCountPrintFilePages(gxPrintFile aPrintFile)
  1721. ;
  1722.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1723.         Macro
  1724.         _GXCountPrintFilePages
  1725.             move.l              #$0000004D,D0
  1726.             dc.w                $ABFE
  1727.         EndM
  1728.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1729.         IMPORT_CFM_FUNCTION GXCountPrintFilePages
  1730.     ENDIF
  1731.  
  1732. ;
  1733. ; pascal void GXReadPrintFilePage(gxPrintFile aPrintFile, long pageNumber, long numViewPorts, gxViewPort *viewPortList, gxFormat *pgFormat, gxShape *pgShape)
  1734. ;
  1735.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1736.         Macro
  1737.         _GXReadPrintFilePage
  1738.             move.l              #$0000004E,D0
  1739.             dc.w                $ABFE
  1740.         EndM
  1741.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1742.         IMPORT_CFM_FUNCTION GXReadPrintFilePage
  1743.     ENDIF
  1744.  
  1745. ;
  1746. ; pascal void GXReplacePrintFilePage(gxPrintFile aPrintFile, long pageNumber, gxFormat aFormat, gxShape aShape)
  1747. ;
  1748.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1749.         Macro
  1750.         _GXReplacePrintFilePage
  1751.             move.l              #$0000004F,D0
  1752.             dc.w                $ABFE
  1753.         EndM
  1754.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1755.         IMPORT_CFM_FUNCTION GXReplacePrintFilePage
  1756.     ENDIF
  1757.  
  1758. ;
  1759. ; pascal void GXInsertPrintFilePage(gxPrintFile aPrintFile, long atPageNumber, gxFormat pgFormat, gxShape pgShape)
  1760. ;
  1761.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1762.         Macro
  1763.         _GXInsertPrintFilePage
  1764.             move.l              #$00000050,D0
  1765.             dc.w                $ABFE
  1766.         EndM
  1767.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1768.         IMPORT_CFM_FUNCTION GXInsertPrintFilePage
  1769.     ENDIF
  1770.  
  1771. ;
  1772. ; pascal void GXDeletePrintFilePageRange(gxPrintFile aPrintFile, long fromPageNumber, long toPageNumber)
  1773. ;
  1774.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1775.         Macro
  1776.         _GXDeletePrintFilePageRange
  1777.             move.l              #$00000051,D0
  1778.             dc.w                $ABFE
  1779.         EndM
  1780.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1781.         IMPORT_CFM_FUNCTION GXDeletePrintFilePageRange
  1782.     ENDIF
  1783.  
  1784. ;
  1785. ; pascal void GXSavePrintFile(gxPrintFile aPrintFile, FSSpec *anFSSpec)
  1786. ;
  1787.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1788.         Macro
  1789.         _GXSavePrintFile
  1790.             move.l              #$00000052,D0
  1791.             dc.w                $ABFE
  1792.         EndM
  1793.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1794.         IMPORT_CFM_FUNCTION GXSavePrintFile
  1795.     ENDIF
  1796.  
  1797.  
  1798. ;    ColorSync Routines
  1799. ;
  1800.  
  1801. ;
  1802. ; pascal long GXFindPrinterProfile(gxPrinter aPrinter, void *searchData, long index, gxColorProfile *returnedProfile)
  1803. ;
  1804.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1805.         Macro
  1806.         _GXFindPrinterProfile
  1807.             move.l              #$00000053,D0
  1808.             dc.w                $ABFE
  1809.         EndM
  1810.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1811.         IMPORT_CFM_FUNCTION GXFindPrinterProfile
  1812.     ENDIF
  1813.  
  1814. ;
  1815. ; pascal long GXFindFormatProfile(gxFormat aFormat, void *searchData, long index, gxColorProfile *returnedProfile)
  1816. ;
  1817.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1818.         Macro
  1819.         _GXFindFormatProfile
  1820.             move.l              #$00000054,D0
  1821.             dc.w                $ABFE
  1822.         EndM
  1823.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1824.         IMPORT_CFM_FUNCTION GXFindFormatProfile
  1825.     ENDIF
  1826.  
  1827. ;
  1828. ; pascal void GXSetPrinterProfile(gxPrinter aPrinter, gxColorProfile oldProfile, gxColorProfile newProfile)
  1829. ;
  1830.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1831.         Macro
  1832.         _GXSetPrinterProfile
  1833.             move.l              #$00000055,D0
  1834.             dc.w                $ABFE
  1835.         EndM
  1836.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1837.         IMPORT_CFM_FUNCTION GXSetPrinterProfile
  1838.     ENDIF
  1839.  
  1840. ;
  1841. ; pascal void GXSetFormatProfile(gxFormat aFormat, gxColorProfile oldProfile, gxColorProfile newProfile)
  1842. ;
  1843.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1844.         Macro
  1845.         _GXSetFormatProfile
  1846.             move.l              #$00000056,D0
  1847.             dc.w                $ABFE
  1848.         EndM
  1849.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1850.         IMPORT_CFM_FUNCTION GXSetFormatProfile
  1851.     ENDIF
  1852.  
  1853.  
  1854. ; ************************************************************************
  1855. ;                        Start of old "GXPrintingResEquates.h/a/p" interface file.
  1856. ;                ************************************************************************
  1857.  
  1858. ;     ------------------------------------
  1859. ;                Basic client types
  1860. ;    ------------------------------------ 
  1861.  
  1862.  
  1863. gxPrintingManagerType            EQU        'pmgr'
  1864. gxImagingSystemType                EQU        'gxis'
  1865. gxPrinterDriverType                EQU        'pdvr'
  1866. gxPrintingExtensionType            EQU        'pext'
  1867. gxUnknownPrinterType            EQU        'none'
  1868. gxAnyPrinterType                EQU        'univ'
  1869. gxQuickdrawPrinterType            EQU        'qdrw'
  1870. gxPortableDocPrinterType        EQU        'gxpd'
  1871. gxRasterPrinterType                EQU        'rast'
  1872. gxPostscriptPrinterType            EQU        'post'
  1873. gxVectorPrinterType                EQU        'vect'
  1874. ;  All pre-defined printing collection items have this ID 
  1875.  
  1876. gxPrintingTagID                    EQU        -28672
  1877.  
  1878. ;     ----------------------------------------------------------------------
  1879. ;
  1880. ;        Resource types and IDs used by both extension and driver writers
  1881. ;
  1882. ;    ---------------------------------------------------------------------- 
  1883.  
  1884. ;  Resources in a printer driver or extension must be based off of these IDs 
  1885.  
  1886. gxPrintingDriverBaseID            EQU        -27648
  1887. gxPrintingExtensionBaseID        EQU        -27136
  1888. ;     Override resources tell the system what messages a driver or extension
  1889. ;        is overriding.  A driver may have a series of these resources. 
  1890. ;  Override resource type for 68k resource-based code:
  1891.  
  1892.  
  1893. gxOverrideType                    EQU        'over'
  1894.  
  1895. ;  Override resource type for PowerPC datafork-based code:
  1896.  
  1897.  
  1898. gxNativeOverrideType            EQU        'povr'
  1899.  
  1900. ;     --------------------------------------------------------------
  1901. ;
  1902. ;        Message ID definitions by both extension and driver writers
  1903. ;
  1904. ;    --------------------------------------------------------------- 
  1905.  
  1906. ;  Identifiers for universal message overrides. 
  1907.  
  1908. gxInitializeMsg                    EQU        0
  1909. gxShutDownMsg                    EQU        1
  1910. gxJobIdleMsg                    EQU        2
  1911. gxJobStatusMsg                    EQU        3
  1912. gxPrintingEventMsg                EQU        4
  1913. gxJobDefaultFormatDialogMsg        EQU        5
  1914. gxFormatDialogMsg                EQU        6
  1915. gxJobPrintDialogMsg                EQU        7
  1916. gxFilterPanelEventMsg            EQU        8
  1917. gxHandlePanelEventMsg            EQU        9
  1918. gxParsePageRangeMsg                EQU        10
  1919. gxDefaultJobMsg                    EQU        11
  1920. gxDefaultFormatMsg                EQU        12
  1921. gxDefaultPaperTypeMsg            EQU        13
  1922. gxDefaultPrinterMsg                EQU        14
  1923. gxCreateSpoolFileMsg            EQU        15
  1924. gxSpoolPageMsg                    EQU        16
  1925. gxSpoolDataMsg                    EQU        17
  1926. gxSpoolResourceMsg                EQU        18
  1927. gxCompleteSpoolFileMsg            EQU        19
  1928. gxCountPagesMsg                    EQU        20
  1929. gxDespoolPageMsg                EQU        21
  1930. gxDespoolDataMsg                EQU        22
  1931. gxDespoolResourceMsg            EQU        23
  1932. gxCloseSpoolFileMsg                EQU        24
  1933. gxStartJobMsg                    EQU        25
  1934. gxFinishJobMsg                    EQU        26
  1935. gxStartPageMsg                    EQU        27
  1936. gxFinishPageMsg                    EQU        28
  1937. gxPrintPageMsg                    EQU        29
  1938. gxSetupImageDataMsg                EQU        30
  1939. gxImageJobMsg                    EQU        31
  1940. gxImageDocumentMsg                EQU        32
  1941. gxImagePageMsg                    EQU        33
  1942. gxRenderPageMsg                    EQU        34
  1943. gxCreateImageFileMsg            EQU        35
  1944. gxOpenConnectionMsg                EQU        36
  1945. gxCloseConnectionMsg            EQU        37
  1946. gxStartSendPageMsg                EQU        38
  1947. gxFinishSendPageMsg                EQU        39
  1948. gxWriteDataMsg                    EQU        40
  1949. gxBufferDataMsg                    EQU        41
  1950. gxDumpBufferMsg                    EQU        42
  1951. gxFreeBufferMsg                    EQU        43
  1952. gxCheckStatusMsg                EQU        44
  1953. gxGetDeviceStatusMsg            EQU        45
  1954. gxFetchTaggedDataMsg            EQU        46
  1955. gxGetDTPMenuListMsg                EQU        47
  1956. gxDTPMenuSelectMsg                EQU        48
  1957. gxHandleAlertFilterMsg            EQU        49
  1958. gxJobFormatModeQueryMsg            EQU        50
  1959. gxWriteStatusToDTPWindowMsg        EQU        51
  1960. gxInitializeStatusAlertMsg        EQU        52
  1961. gxHandleAlertStatusMsg            EQU        53
  1962. gxHandleAlertEventMsg            EQU        54
  1963. gxCleanupStartJobMsg            EQU        55
  1964. gxCleanupStartPageMsg            EQU        56
  1965. gxCleanupOpenConnectionMsg        EQU        57
  1966. gxCleanupStartSendPageMsg        EQU        58
  1967. gxDefaultDesktopPrinterMsg        EQU        59
  1968. gxCaptureOutputDeviceMsg        EQU        60
  1969. gxOpenConnectionRetryMsg        EQU        61
  1970. gxExamineSpoolFileMsg            EQU        62
  1971. gxFinishSendPlaneMsg            EQU        63
  1972. gxDoesPaperFitMsg                EQU        64
  1973. gxChooserMessageMsg                EQU        65
  1974. gxFindPrinterProfileMsg            EQU        66
  1975. gxFindFormatProfileMsg            EQU        67
  1976. gxSetPrinterProfileMsg            EQU        68
  1977. gxSetFormatProfileMsg            EQU        69
  1978. gxHandleAltDestinationMsg        EQU        70
  1979. gxSetupPageImageDataMsg            EQU        71
  1980.  
  1981. ;  Identifiers for Quickdraw message overrides. 
  1982.  
  1983. gxPrOpenDocMsg                    EQU        0
  1984. gxPrCloseDocMsg                    EQU        1
  1985. gxPrOpenPageMsg                    EQU        2
  1986. gxPrClosePageMsg                EQU        3
  1987. gxPrintDefaultMsg                EQU        4
  1988. gxPrStlDialogMsg                EQU        5
  1989. gxPrJobDialogMsg                EQU        6
  1990. gxPrStlInitMsg                    EQU        7
  1991. gxPrJobInitMsg                    EQU        8
  1992. gxPrDlgMainMsg                    EQU        9
  1993. gxPrValidateMsg                    EQU        10
  1994. gxPrJobMergeMsg                    EQU        11
  1995. gxPrGeneralMsg                    EQU        12
  1996. gxConvertPrintRecordToMsg        EQU        13
  1997. gxConvertPrintRecordFromMsg        EQU        14
  1998. gxPrintRecordToJobMsg            EQU        15
  1999.  
  2000. ;  Identifiers for raster imaging message overrides. 
  2001.  
  2002. gxRasterDataInMsg                EQU        0
  2003. gxRasterLineFeedMsg                EQU        1
  2004. gxRasterPackageBitmapMsg        EQU        2
  2005.  
  2006. ;  Identifiers for PostScript imaging message overrides. 
  2007.  
  2008. gxPostscriptQueryPrinterMsg        EQU        0
  2009. gxPostscriptInitializePrinterMsg EQU    1
  2010. gxPostscriptResetPrinterMsg        EQU        2
  2011. gxPostscriptExitServerMsg        EQU        3
  2012. gxPostscriptGetStatusTextMsg    EQU        4
  2013. gxPostscriptGetPrinterTextMsg    EQU        5
  2014. gxPostscriptScanStatusTextMsg    EQU        6
  2015. gxPostscriptScanPrinterTextMsg    EQU        7
  2016. gxPostscriptGetDocumentProcSetListMsg EQU 8
  2017. gxPostscriptDownloadProcSetListMsg EQU    9
  2018. gxPostscriptGetPrinterGlyphsInformationMsg EQU 10
  2019. gxPostscriptStreamFontMsg        EQU        11
  2020. gxPostscriptDoDocumentHeaderMsg    EQU        12
  2021. gxPostscriptDoDocumentSetUpMsg    EQU        13
  2022. gxPostscriptDoDocumentTrailerMsg EQU    14
  2023. gxPostscriptDoPageSetUpMsg        EQU        15
  2024. gxPostscriptSelectPaperTypeMsg    EQU        16
  2025. gxPostscriptDoPageTrailerMsg    EQU        17
  2026. gxPostscriptEjectPageMsg        EQU        18
  2027. gxPostscriptProcessShapeMsg        EQU        19
  2028. gxPostScriptEjectPendingPageMsg    EQU        20
  2029.  
  2030. ;  Identifiers for Vector imaging message overrides. 
  2031.  
  2032. gxVectorPackageDataMsg            EQU        0
  2033. gxVectorLoadPensMsg                EQU        1
  2034. gxVectorVectorizeShapeMsg        EQU        2
  2035.  
  2036. ;  Dialog related resource types 
  2037.  
  2038. gxPrintingAlertType                EQU        'plrt'
  2039. gxStatusType                    EQU        'stat'
  2040. gxExtendedDITLType                EQU        'xdtl'
  2041. gxPrintPanelType                EQU        'ppnl'
  2042. gxCollectionType                EQU        'cltn'
  2043.  
  2044. ;  Communication resource types 
  2045. ;    The looker resource is used by the Chooser PACK to determine what kind
  2046. ;    of communications this driver supports. (In order to generate/handle the 
  2047. ;    pop-up menu for "Connect via:".
  2048. ;    
  2049. ;    The looker resource is also used by PrinterShare to determine the AppleTalk NBP Type
  2050. ;    for servers created for this driver.
  2051. ;
  2052.  
  2053.  
  2054. gxLookerType                    EQU        'look'
  2055. gxLookerID                        EQU        -4096
  2056.  
  2057. ;  The communications method and private data used to connect to the printer 
  2058.  
  2059. gxDeviceCommunicationsType        EQU        'comm'
  2060. ;     -------------------------------------------------
  2061. ;
  2062. ;    Resource types and IDs used by extension writers
  2063. ;
  2064. ;    ------------------------------------------------- 
  2065.  
  2066.  
  2067. gxExtensionUniversalOverrideID    EQU        -27136
  2068.  
  2069. gxExtensionImagingOverrideSelectorID EQU -27136
  2070.  
  2071. gxExtensionScopeType            EQU        'scop'
  2072. gxDriverScopeID                    EQU        -27136
  2073. gxPrinterScopeID                EQU        -27135
  2074. gxPrinterExceptionScopeID        EQU        -27134
  2075.  
  2076. gxExtensionLoadType                EQU        'load'
  2077. gxExtensionLoadID                EQU        -27136
  2078.  
  2079. gxExtensionLoadFirst            EQU        $00000100
  2080. gxExtensionLoadAnywhere            EQU        $7FFFFFFF
  2081. gxExtensionLoadLast                EQU        $FFFFFF00
  2082.  
  2083. gxExtensionOptimizationType        EQU        'eopt'
  2084. gxExtensionOptimizationID        EQU        -27136
  2085.  
  2086. ;     -----------------------------------------------
  2087. ;
  2088. ;    Resource types and IDs used by driver writers
  2089. ;
  2090. ;    ----------------------------------------------- 
  2091.  
  2092.  
  2093. gxDriverUniversalOverrideID        EQU        -27648
  2094. gxDriverImagingOverrideID        EQU        -27647
  2095. gxDriverCompatibilityOverrideID    EQU        -27646
  2096.  
  2097. gxDriverFileFormatType            EQU        'pfil'
  2098. gxDriverFileFormatID            EQU        -27648
  2099.  
  2100.  
  2101. gxDestinationAdditionType        EQU        'dsta'
  2102. gxDestinationAdditionID            EQU        -27648
  2103.  
  2104. ;  IMAGING RESOURCES 
  2105. ;     The imaging system resource specifies which imaging system a printer
  2106. ;        driver wishes to use. 
  2107.  
  2108.  
  2109. gxImagingSystemSelectorType        EQU        'isys'
  2110. gxImagingSystemSelectorID        EQU        -27648
  2111.  
  2112. ;  'exft' resource ID -- exclude font list 
  2113.  
  2114. kExcludeFontListType            EQU        'exft'
  2115. kExcludeFontListID                EQU        -27648
  2116. ;  Resource for type for color matching 
  2117.  
  2118. gxColorMatchingDataType            EQU        'prof'
  2119. gxColorMatchingDataID            EQU        -27648
  2120.  
  2121. ;  Resource type and id for the tray count 
  2122.  
  2123. gxTrayCountDataType                EQU        'tray'
  2124. gxTrayCountDataID                EQU        -27648
  2125.  
  2126. ;  Resource type for the tray names 
  2127.  
  2128. gxTrayNameDataType                EQU        'tryn'
  2129.  
  2130. ;  Resource type for manual feed preferences, stored in DTP. 
  2131.  
  2132. gxManualFeedAlertPrefsType        EQU        'mfpr'
  2133. gxManualFeedAlertPrefsID        EQU        -27648
  2134. ;  Resource type for desktop printer output characteristics, stored in DTP. 
  2135.  
  2136. gxDriverOutputType                EQU        'outp'
  2137. gxDriverOutputTypeID            EQU        1
  2138.  
  2139. ;  IO Resources 
  2140. ;  Resource type and ID for default IO and buffering resources 
  2141.  
  2142. gxUniversalIOPrefsType            EQU        'iobm'
  2143. gxUniversalIOPrefsID            EQU        -27648
  2144.  
  2145. ;     Resource types and IDs for default implementation of CaptureOutputDevice.
  2146. ;        The default implementation of CaptureOutputDevice only handles PAP devices 
  2147.  
  2148. gxCaptureType                    EQU        'cpts'
  2149. gxCaptureStringID                EQU        -27648
  2150. gxReleaseStringID                EQU        -27647
  2151. gxUncapturedAppleTalkType        EQU        -27646
  2152. gxCapturedAppleTalkType            EQU        -27645
  2153.  
  2154. ;  Resource type and ID for custom halftone matrix 
  2155.  
  2156. gxCustomMatrixType                EQU        'dmat'
  2157. gxCustomMatrixID                EQU        -27648
  2158. ;  Resource type and ID for raster driver rendering preferences 
  2159.  
  2160. gxRasterPrefsType                EQU        'rdip'
  2161. gxRasterPrefsID                    EQU        -27648
  2162.  
  2163. ;  Resource type for specifiying a colorset 
  2164.  
  2165. gxColorSetResType                EQU        'crst'
  2166.  
  2167. ;  Resource type and ID for raster driver packaging preferences 
  2168.  
  2169. gxRasterPackType                EQU        'rpck'
  2170. gxRasterPackID                    EQU        -27648
  2171.  
  2172. ;  Resource type and ID for raster driver packaging options 
  2173.  
  2174.  
  2175. gxRasterNumNone                    EQU        0                    ; Number isn't output at all 
  2176. gxRasterNumDirect                EQU        1                    ; Lowest minWidth bytes as data 
  2177. gxRasterNumToASCII                EQU        2                    ; minWidth ASCII characters 
  2178.  
  2179.  
  2180. gxRasterPackOptionsType            EQU        'ropt'
  2181. gxRasterPackOptionsID            EQU        -27648
  2182.  
  2183. ;  Resource type for the PostScript imaging system procedure set control resource 
  2184.  
  2185. gxPostscriptProcSetControlType    EQU        'prec'
  2186.  
  2187. ;  Resource type for the PostScript imaging system printer font resource 
  2188.  
  2189. gxPostscriptPrinterFontType        EQU        'pfnt'
  2190.  
  2191. ;  Resource type and ID for the PostScript imaging system imaging preferences 
  2192.  
  2193. gxPostscriptPrefsType            EQU        'pdip'
  2194. gxPostscriptPrefsID                EQU        -27648
  2195. ;  Resource type and ID for the PostScript imaging system default scanning code 
  2196.  
  2197. gxPostscriptScanningType        EQU        'scan'
  2198. gxPostscriptScanningID            EQU        -27648
  2199.  
  2200. ;  Old Application Support Resources 
  2201.  
  2202. gxCustType                        EQU        'cust'
  2203. gxCustID                        EQU        -8192
  2204.  
  2205.  
  2206. gxReslType                        EQU        'resl'
  2207. gxReslID                        EQU        -8192
  2208.  
  2209.  
  2210. gxDiscreteResolution            EQU        0
  2211.  
  2212.  
  2213. gxStlDialogResID                EQU        -8192
  2214.  
  2215.  
  2216. gxJobDialogResID                EQU        -8191
  2217.  
  2218.  
  2219. gxScaleTableType                EQU        'stab'
  2220. gxDITLControlType                EQU        'dctl'
  2221. ;     The default implementation of gxPrintDefault loads and
  2222. ;    PrValidates a print record stored in the following driver resource. 
  2223.  
  2224. gxPrintRecordType                EQU        'PREC'
  2225. gxDefaultPrintRecordID            EQU        0
  2226.  
  2227. ;    -----------------------------------------------
  2228. ;
  2229. ;    Resource types and IDs used in papertype files
  2230. ;
  2231. ;    -----------------------------------------------
  2232. ;
  2233.  
  2234. ;  Resource type and ID for driver papertypes placed in individual files 
  2235.  
  2236. gxSignatureType                    EQU        'sig '
  2237. gxPapertypeSignatureID            EQU        0
  2238.  
  2239. ;  Papertype creator types 
  2240.  
  2241. gxDrvrPaperType                    EQU        'drpt'
  2242. gxSysPaperType                    EQU        'sypt'                ; System paper type creator 
  2243. gxUserPaperType                    EQU        'uspt'                ; User paper type creator 
  2244.                                                             ; Driver creator types == driver file's creator value 
  2245. gxPaperTypeType                    EQU        'ptyp'
  2246.  
  2247. ; *********************************************************************
  2248. ;                    Start of old "GXPrintingMessages.h/a/p" interface file.
  2249. ;            *********************************************************************
  2250.  
  2251. ;  ------------------------------------------------------------------------------
  2252. ;
  2253. ;                                    Constants and Types
  2254. ;
  2255. ;-------------------------------------------------------------------------------- 
  2256.  
  2257. ;
  2258. ;    ABSTRACT DATA TYPES
  2259. ;
  2260. ;
  2261.  
  2262.  
  2263.  
  2264. ;
  2265. ;    DIALOG PANEL CONSTANTS AND TYPES
  2266. ;
  2267. ;
  2268.  
  2269. ; typedef long                             gxPanelEvent
  2270.  
  2271. ;  Dialog panel event equates 
  2272.  
  2273. gxPanelNoEvt                    EQU        0
  2274. gxPanelOpenEvt                    EQU        1                    ; Initialize and draw 
  2275. gxPanelCloseEvt                    EQU        2                    ; Your panel is going away (panel switchL, confirm or cancel) 
  2276. gxPanelHitEvt                    EQU        3                    ; There's a hit in your panel 
  2277. gxPanelActivateEvt                EQU        4                    ; The dialog window has just been activated 
  2278. gxPanelDeactivateEvt            EQU        5                    ; The dialog window is about to be deactivated 
  2279. gxPanelIconFocusEvt                EQU        6                    ; The focus changes from the panel to the icon list 
  2280. gxPanelPanelFocusEvt            EQU        7                    ; The focus changes from the icon list to the panel 
  2281. gxPanelFilterEvt                EQU        8                    ; Every event is filtered 
  2282. gxPanelCancelEvt                EQU        9                    ; The user has cancelled the dialog 
  2283. gxPanelConfirmEvt                EQU        10                    ; The user has confirmed the dialog 
  2284. gxPanelDialogEvt                EQU        11                    ; Event to be handle by dialoghandler 
  2285. gxPanelOtherEvt                    EQU        12                    ; osEvts, etc. 
  2286. gxPanelUserWillConfirmEvt        EQU        13                    ; User has selected confirm, time to parse panel interdependencies 
  2287.  
  2288. ;  Constants for panel responses to dialog handler calls 
  2289. ; typedef long                             gxPanelResult
  2290.  
  2291.  
  2292. gxPanelNoResult                    EQU        0
  2293. gxPanelCancelConfirmation        EQU        1                    ; Only valid from panelUserWillConfirmEvt - used to keep the dialog from going away 
  2294.  
  2295. ;  Panel event info record for FilterPanelEvent and HandlePanelEvent messages 
  2296. gxPanelInfoRecord        RECORD 0
  2297. panelEvt                 ds.l    1                ; offset: $0 (0)        ;  Why we were called 
  2298. panelResId                 ds.w    1                ; offset: $4 (4)        ;  'ppnl' resource ID of current panel 
  2299. pDlg                     ds.l    1                ; offset: $6 (6)        ;  Pointer to dialog 
  2300. theEvent                 ds.l    1                ; offset: $A (10)        ;  Pointer to event 
  2301. itemHit                     ds.w    1                ; offset: $E (14)        ;  Actual item number as Dialog Mgr thinks 
  2302. itemCount                 ds.w    1                ; offset: $10 (16)        ;  Number of items before your items 
  2303. evtAction                 ds.w    1                ; offset: $12 (18)        ;  Once this event is processed, the action that will result 
  2304. ;  (evtAction is only meaningful during filtering) 
  2305. errorStringId             ds.w    1                ; offset: $14 (20)        ;  STR ID of string to put in error alert (0 means no string) 
  2306. theFormat                 ds.l    1                ; offset: $16 (22)        ;  The current format (only meaningful in a format dialog) 
  2307. refCon                     ds.l    1                ; offset: $1A (26)        ;  refCon passed in PanelSetupRecord 
  2308. sizeof                     EQU *                    ; size:   $1E (30)
  2309.                         ENDR
  2310. ;  Constants for the evtAction field in PanelInfoRecord 
  2311.  
  2312. gxOtherAction                    EQU        0                    ; Current item will not change 
  2313. gxClosePanelAction                EQU        1                    ; Panel will be closed 
  2314. gxCancelDialogAction            EQU        2                    ; Dialog will be cancelled 
  2315. gxConfirmDialogAction            EQU        3                    ; Dialog will be confirmed 
  2316.  
  2317. ;  Constants for the panelKind field in gxPanelSetupRecord 
  2318. ; typedef long                             gxPrintingPanelKind
  2319.  
  2320. ;  The gxPanelSetupInfo structure is passed to GXSetupDialogPanel 
  2321. gxPanelSetupRecord        RECORD 0
  2322. panelKind                 ds.l    1                ; offset: $0 (0)
  2323. panelResId                 ds.w    1                ; offset: $4 (4)
  2324. resourceRefNum             ds.w    1                ; offset: $6 (6)
  2325. refCon                     ds.l    1                ; offset: $8 (8)
  2326. sizeof                     EQU *                    ; size:   $C (12)
  2327.                         ENDR
  2328.  
  2329. gxApplicationPanel                EQU        0
  2330. gxExtensionPanel                EQU        1
  2331. gxDriverPanel                    EQU        2
  2332.  
  2333. ;  Constants returned by gxParsePageRange message 
  2334. ; typedef long                             gxParsePageRangeResult
  2335.  
  2336.  
  2337. gxRangeNotParsed                EQU        0                    ; Default initial value 
  2338. gxRangeParsed                    EQU        1                    ; Range has been parsed 
  2339. gxRangeBadFromValue                EQU        2                    ; From value is bad 
  2340. gxRangeBadToValue                EQU        3                    ; To value is bad 
  2341. ;
  2342. ;    STATUS-RELATED CONSTANTS AND TYPES
  2343. ;
  2344. ;
  2345.  
  2346.  
  2347. ;  Structure for status messages 
  2348. gxStatusRecord            RECORD 0
  2349. statusType                 ds.w    1                ; offset: $0 (0)        ;  One of the ids listed above (nonFatalError, etc. ) 
  2350. statusId                 ds.w    1                ; offset: $2 (2)        ;  Specific status (out of paper, etc.) 
  2351. statusAlertId             ds.w    1                ; offset: $4 (4)        ;     Printing alert ID (if any) for status 
  2352. statusOwner                 ds.l    1                ; offset: $6 (6)        ;  Creator type of status owner 
  2353. statResId                 ds.w    1                ; offset: $A (10)        ;  ID for 'stat' resource 
  2354. statResIndex             ds.w    1                ; offset: $C (12)        ;  Index into 'stat' resource for this status 
  2355. dialogResult             ds.w    1                ; offset: $E (14)        ;  ID of button string selected on dismissal of printing alert 
  2356. bufferLen                 ds.w    1                ; offset: $10 (16)        ;  Number of bytes in status buffer - total record size must be <= 512 
  2357. statusBuffer             ds.b    1                ; offset: $12 (18) <-- really an array of length one ;  User response from alert 
  2358.                          ORG 20
  2359. sizeof                     EQU *                    ; size:   $14 (20)
  2360.                         ENDR
  2361.  
  2362. ;  Constants for statusType field of gxStatusRecord 
  2363.  
  2364. gxNonFatalError                    EQU        1                    ; An error occurred, but the job can continue 
  2365. gxFatalError                    EQU        2                    ; A fatal error occurred-- halt job 
  2366. gxPrinterReady                    EQU        3                    ; Tells QDGX to leave alert mode 
  2367. gxUserAttention                    EQU        4                    ; Signals initiation of a modal alert 
  2368. gxUserAlert                        EQU        5                    ; Signals initiation of a moveable modal alert 
  2369. gxPageTransmission                EQU        6                    ; Signals page sent to printer, increments page count in strings to user 
  2370. gxOpenConnectionStatus            EQU        7                    ; Signals QDGX to begin animation on printer icon 
  2371. gxInformationalStatus            EQU        8                    ; Default status type, no side effects 
  2372. gxSpoolingPageStatus            EQU        9                    ; Signals page spooled, increments page count in spooling dialog 
  2373. gxEndStatus                        EQU        10                    ; Signals end of spooling 
  2374. gxPercentageStatus                EQU        11                    ; Signals QDGX as to the amount of the job which is currently complete 
  2375.  
  2376. ;  Structure for gxWriteStatusToDTPWindow message 
  2377. gxDisplayRecord            RECORD 0
  2378. useText                     ds.b    1                ; offset: $0 (0)        ;  Use text as opposed to a picture 
  2379. padByte                     ds.b    1                ; offset: $1 (1)
  2380. hPicture                 ds.l    1                ; offset: $2 (2)        ;  if !useText, the picture handle 
  2381. theText                     ds        Str255            ; offset: $6 (6)        ;  if useText, the text 
  2382. sizeof                     EQU *                    ; size:   $106 (262)
  2383.                         ENDR
  2384.  
  2385. ; -----------------------------------------------
  2386. ;  paper mapping-related constants and types...  
  2387. ; -----------------------------------------------
  2388.  
  2389. ; typedef long                             gxTrayMapping
  2390.  
  2391.  
  2392. gxDefaultTrayMapping            EQU        0
  2393. gxConfiguredTrayMapping            EQU        1
  2394.  
  2395.  
  2396. ;  ------------------------------------------------------------------------------
  2397. ;
  2398. ;                API Functions callable only from within message overrides
  2399. ;
  2400. ;-------------------------------------------------------------------------------- 
  2401.  
  2402.  
  2403. ;    Message Sending API Routines
  2404. ;
  2405.  
  2406. ;
  2407. ;    How to use the GXPRINTINGDISPATCH macro...
  2408. ;    
  2409. ;    If your driver or extension is large, you may want to segment it
  2410. ;    across smaller boundaries than is permitted by the messaging system.
  2411. ;    Without using the Printing Manager's segmentation manager directly,
  2412. ;    the smallest segment you can create consists of the code to override
  2413. ;    a single message.  If you are overriding workhorse messages such as
  2414. ;    RenderPage, you may want to divide up the work among many functions
  2415. ;    distributed across several segments.  Here's how...
  2416. ;    
  2417. ;    The Printing Manager segment scheme involves the construction of a
  2418. ;    single 32-bit dispatch selector, which contains all the information
  2419. ;    necessary for the dispatcher to find a single routine.  It contains the
  2420. ;    segment's resource ID, and the offset within the segment which contains
  2421. ;    the start of the routine.  The GXPRINTINGDISPATCH macro will construct the
  2422. ;    dispatch selector for you, as well as the code to do the dispatch.
  2423. ;    
  2424. ;    Usually, it is convenient to start your segment with a long aligned jump table,
  2425. ;    beginning after the 4 byte header required by the Printing Manager.  The
  2426. ;    macro assumes this is the case and takes a 1-based routine selector from
  2427. ;    which it conmstructs the offset.
  2428. ;    
  2429. ;    For example, if your code is in resource 'pdvr' (print driver), ID=2
  2430. ;    at offset=12 (third routine in segment), you would declare your
  2431. ;    routine as follows:
  2432. ;    
  2433. ;    OSErr MyRenderingRoutine (long param1, Ptr param2)
  2434. ;        = GXPRINTINGDISPATCH(2, 3);
  2435. ;        
  2436. ;    Remember, ALL segment dispatches must return OSErr.  If your routine
  2437. ;    does not generate errors, you must still declare it to return OSErr
  2438. ;    and have the routine itself return noErr.
  2439. ;    
  2440. ;    An alternative way to call across segments is to call the GXPrintingDispatch
  2441. ;    function directly.  You must construct the 32-bit selector yourself and pass
  2442. ;    it as the first parameter.  This is usually not preferable since you don't get
  2443. ;    type-checking unless you declare a prototype as shown above, and your code
  2444. ;    isn't as easy to read.
  2445. ;    
  2446. ;    So given the above prototype, there are two ways to call the function:
  2447. ;    
  2448. ;        anErr = MyRenderingRoutine(p1, p2);            // Free type checking!
  2449. ;        
  2450. ;    or:
  2451. ;    
  2452. ;        #define kMyRenderRoutineSelector 0x0002000C
  2453. ;        anErr = GXPrintingDispatch(kMyRenderRoutineSelector, p1, p2);        // No type-checking!
  2454. ;    
  2455. ;    
  2456. ;    Both have the same effect.
  2457. ;
  2458. ;
  2459.  
  2460. ;
  2461. ; extern gxJob GXGetJob(void )
  2462. ;
  2463.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2464.         Macro
  2465.         _GXGetJob
  2466.             move.l              #$00010001,D0
  2467.             dc.w                $ABFE
  2468.         EndM
  2469.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2470.         IMPORT_CFM_FUNCTION GXGetJob
  2471.     ENDIF
  2472.  
  2473. ;
  2474. ; extern short GXGetMessageHandlerResFile(void )
  2475. ;
  2476.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2477.         Macro
  2478.         _GXGetMessageHandlerResFile
  2479.             move.l              #$00010002,D0
  2480.             dc.w                $ABFE
  2481.         EndM
  2482.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2483.         IMPORT_CFM_FUNCTION GXGetMessageHandlerResFile
  2484.     ENDIF
  2485.  
  2486. ;
  2487. ; extern Boolean GXSpoolingAborted(void )
  2488. ;
  2489.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2490.         Macro
  2491.         _GXSpoolingAborted
  2492.             move.l              #$00010003,D0
  2493.             dc.w                $ABFE
  2494.         EndM
  2495.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2496.         IMPORT_CFM_FUNCTION GXSpoolingAborted
  2497.     ENDIF
  2498.  
  2499. ;
  2500. ; extern OSErr GXJobIdle(void )
  2501. ;
  2502.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2503.         Macro
  2504.         _GXJobIdle
  2505.             move.l              #$00010004,D0
  2506.             dc.w                $ABFE
  2507.         EndM
  2508.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2509.         IMPORT_CFM_FUNCTION GXJobIdle
  2510.     ENDIF
  2511.  
  2512. ;
  2513. ; extern OSErr GXReportStatus(long statusID, unsigned long statusIndex)
  2514. ;
  2515.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2516.         Macro
  2517.         _GXReportStatus
  2518.             move.l              #$00010005,D0
  2519.             dc.w                $ABFE
  2520.         EndM
  2521.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2522.         IMPORT_CFM_FUNCTION GXReportStatus
  2523.     ENDIF
  2524.  
  2525. ;
  2526. ; extern OSErr GXAlertTheUser(gxStatusRecord *statusRec)
  2527. ;
  2528.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2529.         Macro
  2530.         _GXAlertTheUser
  2531.             move.l              #$00010006,D0
  2532.             dc.w                $ABFE
  2533.         EndM
  2534.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2535.         IMPORT_CFM_FUNCTION GXAlertTheUser
  2536.     ENDIF
  2537.  
  2538. ;
  2539. ; extern OSErr GXSetupDialogPanel(gxPanelSetupRecord *panelRec)
  2540. ;
  2541.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2542.         Macro
  2543.         _GXSetupDialogPanel
  2544.             move.l              #$00010007,D0
  2545.             dc.w                $ABFE
  2546.         EndM
  2547.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2548.         IMPORT_CFM_FUNCTION GXSetupDialogPanel
  2549.     ENDIF
  2550.  
  2551. ;
  2552. ; extern OSErr GXCountTrays(gxTrayIndex *numTrays)
  2553. ;
  2554.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2555.         Macro
  2556.         _GXCountTrays
  2557.             move.l              #$00010008,D0
  2558.             dc.w                $ABFE
  2559.         EndM
  2560.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2561.         IMPORT_CFM_FUNCTION GXCountTrays
  2562.     ENDIF
  2563.  
  2564. ;
  2565. ; extern OSErr GXGetTrayName(gxTrayIndex trayNumber, Str31 trayName)
  2566. ;
  2567.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2568.         Macro
  2569.         _GXGetTrayName
  2570.             move.l              #$00010009,D0
  2571.             dc.w                $ABFE
  2572.         EndM
  2573.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2574.         IMPORT_CFM_FUNCTION GXGetTrayName
  2575.     ENDIF
  2576.  
  2577. ;
  2578. ; extern OSErr GXSetTrayPaperType(gxTrayIndex whichTray, gxPaperType aPapertype)
  2579. ;
  2580.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2581.         Macro
  2582.         _GXSetTrayPaperType
  2583.             move.l              #$0001000A,D0
  2584.             dc.w                $ABFE
  2585.         EndM
  2586.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2587.         IMPORT_CFM_FUNCTION GXSetTrayPaperType
  2588.     ENDIF
  2589.  
  2590. ;
  2591. ; extern OSErr GXGetTrayPaperType(gxTrayIndex whichTray, gxPaperType aPapertype)
  2592. ;
  2593.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2594.         Macro
  2595.         _GXGetTrayPaperType
  2596.             move.l              #$0001000B,D0
  2597.             dc.w                $ABFE
  2598.         EndM
  2599.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2600.         IMPORT_CFM_FUNCTION GXGetTrayPaperType
  2601.     ENDIF
  2602.  
  2603. ;
  2604. ; extern OSErr GXGetTrayMapping(gxTrayMapping *trayMapping)
  2605. ;
  2606.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2607.         Macro
  2608.         _GXGetTrayMapping
  2609.             move.l              #$0001000C,D0
  2610.             dc.w                $ABFE
  2611.         EndM
  2612.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2613.         IMPORT_CFM_FUNCTION GXGetTrayMapping
  2614.     ENDIF
  2615.  
  2616. ;
  2617. ; extern void GXCleanupStartJob(void )
  2618. ;
  2619.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2620.         Macro
  2621.         _GXCleanupStartJob
  2622.             move.l              #$0001000D,D0
  2623.             dc.w                $ABFE
  2624.         EndM
  2625.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2626.         IMPORT_CFM_FUNCTION GXCleanupStartJob
  2627.     ENDIF
  2628.  
  2629. ;
  2630. ; extern void GXCleanupStartPage(void )
  2631. ;
  2632.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2633.         Macro
  2634.         _GXCleanupStartPage
  2635.             move.l              #$0001000E,D0
  2636.             dc.w                $ABFE
  2637.         EndM
  2638.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2639.         IMPORT_CFM_FUNCTION GXCleanupStartPage
  2640.     ENDIF
  2641.  
  2642. ;
  2643. ; extern void GXCleanupOpenConnection(void )
  2644. ;
  2645.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2646.         Macro
  2647.         _GXCleanupOpenConnection
  2648.             move.l              #$0001000F,D0
  2649.             dc.w                $ABFE
  2650.         EndM
  2651.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2652.         IMPORT_CFM_FUNCTION GXCleanupOpenConnection
  2653.     ENDIF
  2654.  
  2655. ;
  2656. ; extern void GXCleanupStartSendPage(void )
  2657. ;
  2658.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2659.         Macro
  2660.         _GXCleanupStartSendPage
  2661.             move.l              #$00010010,D0
  2662.             dc.w                $ABFE
  2663.         EndM
  2664.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2665.         IMPORT_CFM_FUNCTION GXCleanupStartSendPage
  2666.     ENDIF
  2667.  
  2668.  
  2669. ;  ------------------------------------------------------------------------------
  2670. ;
  2671. ;                    Constants and types for Universal Printing Messages
  2672. ;
  2673. ;-------------------------------------------------------------------------------- 
  2674.  
  2675.  
  2676. ;  Options for gxCreateSpoolFile message 
  2677.  
  2678. gxNoCreateOptions                EQU        $00000000            ; Just create the file 
  2679. gxInhibitAlias                    EQU        $00000001            ; Do not create an alias in the PMD folder 
  2680. gxInhibitUniqueName                EQU        $00000002            ; Do not append to the filename to make it unique 
  2681. gxResolveBitmapAlias            EQU        $00000004            ; Resolve bitmap aliases and duplicate data in file 
  2682.  
  2683. ;  Options for gxCloseSpoolFile message 
  2684.  
  2685. gxNoCloseOptions                EQU        $00000000            ; Just close the file 
  2686. gxDeleteOnClose                    EQU        $00000001            ; Delete the file rather than closing it 
  2687. gxUpdateJobData                    EQU        $00000002            ; Write current job information into file prior to closing 
  2688. gxMakeRemoteFile                EQU        $00000004            ; Mark job as a remote file 
  2689.  
  2690. ;  Options for gxCreateImageFile message 
  2691.  
  2692. gxNoImageFile                    EQU        $00000000            ; Don't create image file 
  2693. gxMakeImageFile                    EQU        $00000001            ; Create an image file 
  2694. gxEachPlane                        EQU        $00000002            ; Only save up planes before rewinding 
  2695. gxEachPage                        EQU        $00000004            ; Save up entire pages before rewinding 
  2696. gxEntireFile                    EQU        $00000006            ; Save up the entire file before rewinding 
  2697.  
  2698. ;  Options for gxBufferData message 
  2699.  
  2700. gxNoBufferOptions                EQU        $00000000
  2701. gxMakeBufferHex                    EQU        $00000001
  2702. gxDontSplitBuffer                EQU        $00000002
  2703.  
  2704. ;  Structure for gxDumpBuffer and gxFreeBuffer messages 
  2705. gxPrintingBuffer        RECORD 0
  2706. size                     ds.l    1                ; offset: $0 (0)        ;  Size of buffer in bytes 
  2707. userData                 ds.l    1                ; offset: $4 (4)        ;  Client assigned id for the buffer 
  2708. data                     ds.b    1                ; offset: $8 (8) <-- really an array of length one ;  Array of size bytes 
  2709.                          ORG 10
  2710. sizeof                     EQU *                    ; size:   $A (10)
  2711.                         ENDR
  2712.  
  2713. ;  Structure for gxRenderPage message 
  2714. gxPageInfoRecord        RECORD 0
  2715. docPageNum                 ds.l    1                ; offset: $0 (0)        ;  Number of page being printed 
  2716. copyNum                     ds.l    1                ; offset: $4 (4)        ;  Copy number being printed 
  2717. formatChanged             ds.b    1                ; offset: $8 (8)        ;  True if format changed from last page 
  2718. pageChanged                 ds.b    1                ; offset: $9 (9)        ;  True if page contents changed from last page 
  2719. internalUse                 ds.l    1                ; offset: $A (10)        ;  Private 
  2720. sizeof                     EQU *                    ; size:   $E (14)
  2721.                         ENDR
  2722.  
  2723. ;  ------------------------------------------------------------------------------
  2724. ;
  2725. ;                                Universal Printing Messages
  2726. ;
  2727. ;-------------------------------------------------------------------------------- 
  2728.  
  2729. ; *******************************************************************
  2730. ;                    Start of old "GXPrintingErrors.h/a/p" interface file.
  2731. ;            *******************************************************************
  2732.  
  2733.  
  2734. gxPrintingResultBase            EQU        -510                ;First QuickDraw GX printing error code.
  2735. ; RESULT CODES FOR QUICKDRAW GX PRINTING OPERATIONS
  2736.  
  2737. gxAioTimeout                    EQU        -510                ;-510 : Timeout condition occurred during operation
  2738. gxAioBadRqstState                EQU        -511                ;-511 : Async I/O request in invalid state for operation
  2739. gxAioBadConn                    EQU        -512                ;-512 : Invalid Async I/O connection refnum
  2740. gxAioInvalidXfer                EQU        -513                ;-513 : Read data transfer structure contained bad values
  2741. gxAioNoRqstBlks                    EQU        -514                ;-514 : No available request blocks to process request
  2742. gxAioNoDataXfer                    EQU        -515                ;-515 : Data transfer structure pointer not specified
  2743. gxAioTooManyAutos                EQU        -516                ;-516 : Auto status request already active
  2744. gxAioNoAutoStat                    EQU        -517                ;-517 : Connection not configured for auto status
  2745. gxAioBadRqstID                    EQU        -518                ;-518 : Invalid I/O request identifier
  2746. gxAioCantKill                    EQU        -519                ;-519 : Comm. protocol doesn't support I/O term
  2747. gxAioAlreadyExists                EQU        -520                ;-520 : Protocol spec. data already specified
  2748. gxAioCantFind                    EQU        -521                ;-521 : Protocol spec. data does not exist
  2749. gxAioDeviceDisconn                EQU        -522                ;-522 : Machine disconnected from printer
  2750. gxAioNotImplemented                EQU        -523                ;-523 : Function not implemented
  2751. gxAioOpenPending                EQU        -524                ;-524 : Opening a connection for protocol, but another open pending
  2752. gxAioNoProtocolData                EQU        -525                ;-525 : No protocol specific data specified in request
  2753. gxAioRqstKilled                    EQU        -526                ;-526 : I/O request was terminated
  2754. gxBadBaudRate                    EQU        -527                ;-527 : Invalid baud rate specified
  2755. gxBadParity                        EQU        -528                ;-528 : Invalid parity specified
  2756. gxBadStopBits                    EQU        -529                ;-529 : Invalid stop bits specified
  2757. gxBadDataBits                    EQU        -530                ;-530 : Invalid data bits specified
  2758. gxBadPrinterName                EQU        -531                ;-531 : Bad printer name specified
  2759. gxAioBadMsgType                    EQU        -532                ;-532 : Bad masType field in transfer info structure
  2760. gxAioCantFindDevice                EQU        -533                ;-533 : Cannot locate target device
  2761. gxAioOutOfSeq                    EQU        -534                ;-534 : Non-atomic SCSI requests submitted out of sequence
  2762. gxPrIOAbortErr                    EQU        -535                ;-535 : I/O operation aborted
  2763. gxPrUserAbortErr                EQU        -536                ;-536 : User aborted
  2764. gxCantAddPanelsNowErr            EQU        -537                ;-537 : Can only add panels during driver switch or dialog setup
  2765. gxBadxdtlKeyErr                    EQU        -538                ;-538 : Unknown key for xdtl - must be radiobutton, etc
  2766. gxXdtlItemOutOfRangeErr            EQU        -539                ;-539 : Referenced item does not belong to panel
  2767. gxNoActionButtonErr                EQU        -540                ;-540 : Action button is nil
  2768. gxTitlesTooLongErr                EQU        -541                ;-541 : Length of buttons exceeds alert maximum width
  2769. gxUnknownAlertVersionErr        EQU        -542                ;-542 : Bad version for printing alerts
  2770. gxGBBufferTooSmallErr            EQU        -543                ;-543 : Buffer too small.
  2771. gxInvalidPenTable                EQU        -544                ;-544 : Invalid vector driver pen table.
  2772. gxIncompletePrintFileErr        EQU        -545                ;-545 : Print file was not completely spooled
  2773. gxCrashedPrintFileErr            EQU        -546                ;-546 : Print file is corrupted
  2774. gxInvalidPrintFileVersion        EQU        -547                ;-547 : Print file is incompatible with current QuickDraw GX version
  2775. gxSegmentLoadFailedErr            EQU        -548                ;-548 : Segment loader error
  2776. gxExtensionNotFoundErr            EQU        -549                ;-549 : Requested printing extension could not be found
  2777. gxDriverVersionErr                EQU        -550                ;-550 : Driver too new for current version of QuickDraw GX
  2778. gxImagingSystemVersionErr        EQU        -551                ;-551 : Imaging system too new for current version of QuickDraw GX
  2779. gxFlattenVersionTooNew            EQU        -552                ;-552 : Flattened object format too new for current version of QDGX
  2780. gxPaperTypeNotFound                EQU        -553                ;-553 : Requested papertype could not be found
  2781. gxNoSuchPTGroup                    EQU        -554                ;-554 : Requested papertype group could not be found
  2782. gxNotEnoughPrinterMemory        EQU        -555                ;-555 : Printer does not have enough memory for fonts in document
  2783. gxDuplicatePanelNameErr            EQU        -556                ;-556 : Attempt to add more than 10 panels with the same name
  2784. gxExtensionVersionErr            EQU        -557                ;-557 : Extension too new for current version of QuickDraw GX
  2785.  
  2786.  
  2787.     ENDIF ; __GXPRINTING__ 
  2788.  
  2789.